Windows Apache PHP
PHP е скриптов език за програмиране използван за сървърни приложения и e най-популярния за разработване на динамично уеб-съдържание. Автор на езика е датчанинът от канадски произход Размус Лердорф.
Contents
Цел на упражнението
Конфигуриране на PHP/Apache Windows Web server.
Опитна постановка
- Да се импортира инсталация на Windows XP на виртуалната машина, от директория D:/it, като файлът на диска на виртуалната машина се запише на D:/ime/*.vmdk
- Преди да се включи виртуалният компютър мрежовата карта да се пренасочи към мрежовата карта на хост компютъра (мостов адаптер) и да се смени MAC адресът
- След включване на виртуалната машина да се смени името на компютъра на phpX, където X е номера на работната станция.
- Да се зададат на мрежовият интерфейс на PHP-сървъра следните настройки, където X е номера на работната станция:
- IP: 192.168.0.20X/24,
- Gaytway: 192.168.0.11
- DNS: 192.168.0.10X
Конфигуриране PHP, Apache, Windows
Инсталация Apache
Да се инсталира Apache със следните настройки:
- Network Domain: pcX.abv.bg
- Server name: apache.pcX.abv.bg
- Administrator email: student@pcX.abv.bg
Инсталационен файл: http://192.168.0.99/apache.msi
Инсталация PHP
Има две разновидности за Windows - "Thread Safe" - ако ще се използва Apache Web Server и "Non Thread Safe" - ако ще ползваме IIS Web Server.)
При използване на PHP с интегриран Windows инсталатор, всички настройки се конфигурират автоматично.
- Apache 2.2.x Module
- Apache configuraton directory: C:\Program Files\Apache Software Foundation\Apache2.2\conf\
проверете за следните настройки в httpd.conf
PHPIniDir "C:/Program Files/PHP/"
LoadModule php5_module c:/PHP/php5apache2_2.dll
AddType application/x-httpd-php .php
Намерете записът за автоматично отваряне на файл и добавете index.php:
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
- Рестартирайте Apache
DNS
- Да се се конфигурира към зоновия файл на pcX.abv.bg, така че pcX.abv.bg да сочи към 192.168.0.20Х.
Тестване
Създайте текствов файл index.php и добавете в него:
<?php // PHP skriptyt zapochva s <?php или <?
phpinfo();
// и завършва с ?>
?>
Качете файла на web сървъра и го заредете през web браузъра. Ако след извикването на файла се изведе системната информация за php, сървърът работи.
Глобални променливи
Да се тестват глобалните променливи на PHP - $_SERVER, $_POST, $_GET.
<html>
<head>
<title>Globals</title>
</head>
<body>
<?php
print_r($_SERVER);
print "<br />";
print_r($_GET);
print "<br />";
print_r($_POST);
?>
</body>
</html>
Форма за коментари
Да създаде уеб страница за оставяне на коментари.
<?php
$file = 'comments.txt'; // Променливите в PHP започват с $ и не е нужно да се инициализират
$fd = fopen( $file, 'a+'); // отваряне на файл за четене
if( isset($_POST['name'])) //проверка за съществуване на променлива
{ // В PHP има асоциативни променливи
fwrite($fd, "<p>Име: $_POST[name] \r\n"); //Когато стрингът е в двойни кавички, той се интерпретира
fwrite($fd, "<br /> $_POST[comment] </p> \r\n"); // Заместват се променливите и специалните символи
}
fseek($fd, 0); // връщане на показалеца на файла в 0 байт
$comments = fread($fd, filesize($file)); // четене от файл
fclose($fd );
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<form action="" method="post">
<table>
<tr>
<td>ime</td>
<td><input type="text" name="name" value="" maxlength="100" /></td>
</tr>
<tr>
<td>komentar</td>
<td><textarea rows="3" cols="20" name="comment"></textarea></td>
</tr>
<tr>
<td colspan="2"><input name="submit" type="submit" value="Submit" /></td>
</tr>
</table>
</form>
<?php print $comments ?>
</body>
</html>
Фишинг / Phishing
Да се създаде фишинг страница на abv.bg.