Поняття Веб сервера. Синтаксис мови PHP
Веб-сервер - це сервер, що приймає HTTP-запити від клієнтів, зазвичай веб-браузерів, і видає їм HTTP-відповіді, зазвичай разом з HTML-сторінкою, зображенням, файлом, медіа-потоком або іншими даними.
Веб-сервери - основа Всесвітньої павутини.
Веб-сервером називають як програмне забезпечення, яке виконує функції веб-сервера, так і комп'ютер, на якому це програмне забезпечення працює.
Додатковими функціями багатьох веб-серверів є:
· Ведення журналу звернень користувачів до ресурсів;
· Підтримка динамічно генеруються сторінок;
· Підтримка HTTPS для захищених з'єднань з клієнтами.
HTTPS - розширення протоколу HTTP, що підтримує шифрування. Дані, що передаються по протоколу HTTP, «упаковуються» в криптографічний протокол SSL або TLS, тим самим забезпечується захист цих даних.
На відміну від HTTP, для HTTPS за замовчуванням використовується TCP порт 443 (для незахищеного HTTP - 80). Ця система була розроблена компанією Netscape Communications Corporation, щоб Забезпечте аутентифікацію і захищене з'єднання.
HTTPS широко використовується в світі Веб для додатків, в яких важлива безпека з'єднання, наприклад, в платіжних системах. Це забезпечує захист від атак, заснованих на фальсифікації або прослуховуванні середнього рівня мережевого з'єднання
В даний час HTTPS підтримується найбільш популярними браузерами.
Взагалі https НЕ явлется окремим протоколом. По суті це звичайний HTTP, що працює через шифровані транспортні механізми SSL і TLS. Це забезпечує захист від атак, заснованих на фальсифікації або прослуховуванні середнього рівня мережевого з'єднання - т. Зв. man-in-the-middle (наприклад, від сніфферскіх атак).
Недоліком використання HTTPS є довжина ключа - всього 40, 56, або 128 біт. На думку більшості фахівців з інформаційної безпеки, сьогодні надійної довжиною ключа може бути довжина, порівнянна з 1024 біт. Тому довжина ключа навіть в максимальні 128 біт HTTPS явно недостатня. Крім того, більшість браузерів використовує довжину ключа 40 біт (приклад тому - IE). Це пов'язано з експортними обмеженнями в США. І, отже, не слід вважати, що HTTPS забезпечує гідний рівень шифрування. Але таке шифрування значно ускладнює зловмисникові пошук паролів та іншої особистої інформації.
На сьогодні двома найбільш поширеними веб-серверами, разом займають близько 90% ринку, є:
• Apache - вільний веб-сервер, найбільш часто використовується в Unix-подібних ОС.
• IIS від компанії Microsoft, поширюється з ОС сімейства Windows NT.
В якості клієнтів для звернення до веб-серверів можуть використовуватися абсолютно різні пристрої:
Веб-браузер - найпоширеніший спосіб
Спеціальне програмне забезпечення може самостійно звертатися до веб-серверів для отримання оновлень або іншої інформації
Інші інтелектуальні пристрої або побутова техніка
Програми PHP можуть виконуватися двома способами: як сценарну додаток Web-сервером і як консольні програми. Оскільки, нашим завданням є програмування web-додатків, ми переважно будемо розглядати перший спосіб.
Справа в тому, що PHP, як правило, використовується суто для програмування додатків, пов'язаних з Інтернетом. Однак, PHP можна ще використовувати в якості інтерпретатора командного рядка, в основному в * nix-системах. Останнє можливо за допомогою CORBA і COM інтерфейсів, а також за допомогою розширення PHP-GTK. При такому використанні PHP можливе вирішення наступних завдань:
· Створення додатків інтерактивної командного рядка;
· Створення крос-платформних GUI додатків за допомогою бібліотеки PHP-GTK;
· Автоматизація деяких завдань під Windows і Linux
Розглянемо процес виконання php-сценарію при зверненні браузера до сервера. Отже, спочатку браузер запитує сторінку з розширенням .php, після чого web-сервер пропускає програму через машину PHP і видає результат у вигляді html-коду. Причому, якщо взяти стандартну сторінку HTML, змінити розширення на .php і пропустити її через машину PHP, остання просто перешле її користувачеві без змін. Щоб включити в цей файл команди PHP, необхідно укласти команди PHP в спеціальні теги, яких розрізняють 4 види (вони еквівалентні і можна використовувати будь-які):
1. Інструкція обробки XML:
4. Інструкція обробки SGML:
7. Інструкція обробки сценаріїв HTML:
8.
10. Інструкція в стилі ASP:
Ми будемо дотримуватися стилю XML або SGML.
// цей рядок не тлумачиться як такий код PHP
// і виводиться тільки якщо блок коду виконується
Команда echo в PHP застосовується для виведення фактично все, що зустрічається на web-сторінках (текст, розмітку HTML, числа). Сенс її дії, ми думаємо, зрозумілий з наведеного прикладу.
Перш ніж ми поговоримо про синтаксис PHP, давайте спочатку визначимо, що мається на увазі під словом синтаксис.
Синтаксис - правила, яких необхідно дотримуватися, щоб писати правильно структурований код.
Синтаксис PHP і його семантика схожі на більшість інших мов програмування (C, Java, Perl). З тією лише різницею, що код PHP вбудовується в html розмітку сторінки. Весь код PHP повинні міститися в наступних тегах:
Якщо ви не хочете проблем, то пишете за стандартною формою (тобто php), а не в скороченому вигляді. Це гарантує, що ваші скрипти будуть працювати на серварах з різними настройками.
Як зберігати ваші PHP сторінки
Якщо у вас є PHP код, який включений в HTML і ви хочете, щоб браузер інтерпретував все правильно, то ви повинні зберегти файл з розширенням .php, замість стандартного .html. Так що не забудьте перевірити, що ви зберігаєте файли правильно. Наприклад, замість index.html має бути index.php.
Приклад простий html сторінки з PHP кодом
Нижче наведено приклад простої сторінки, яка містить в собі php код. Ви можете брати її за основу для своїх проектів:
echo "Hello World!"
Ось що ми отримаємо в результаті:
Ми використовували команду echo, щоб написати «Hello World!». Звичайно, ми повернемося до цієї команди трохи пізніше, в наступних уроках.
Як ви можете помітити, в наведеному вище прикладі не було крапки з комою після рядка коду PHP. Крапка з комою означає кінець операції в PHP і ніколи не варто про неї забувати. Наприклад, якби ми повторили нашу команду виведення написи «Hello World!» Кілька разів, то ми повинні поставити крапку з комою в кінці кожного рядка.
echo "Hello World!";
echo "Hello World!";
echo "Hello World!";
echo "Hello World!";
echo "Hello World!";
Hello World! Hello World!
Підсумок. Ми навчилися вбудовувати php код в html сторінку, зберігати з відповідним розширенням '.php'. Розглянули кілька прикладів побудови сторінки, а тому числі і з використанням команди echo.
Буде видно в вихідному коді HTML, але не в браузері ->
// цю функцію ми розглянемо пізніше
У РНР змінні починаються зі знака долара ($), за яким може слідувати будь-яку кількість букв і цифр і символів підкреслення, але перший символ не може бути цифрою. Таким чином, припустимі наступні імена змінних: $ n. $ N1. $ User_func_5 і т. Д. На відміну від ключових слів, імена пе-ремінних в PHP чутливі до регістру, т. Е. Змінні $ user. $ User і $ USER є різними.
echo $ user; // Володимир
echo $ User; // Дмитро
echo $ USER; // Юрій