Difference between revisions of "Windows Apache PHP"
Line 2: | Line 2: | ||
Конфигуриране на PHP/Apache Web server. | Конфигуриране на PHP/Apache Web server. | ||
− | PHP е скриптов език за програмиране използван за сървърни приложения и e най-популярния за разработване на динамично уеб-съдържание. Автор на езика е датчанинът от канадски произход Размус Лердорф | + | PHP е скриптов език за програмиране използван за сървърни приложения и e най-популярния за разработване на динамично уеб-съдържание. Автор на езика е датчанинът от канадски произход Размус Лердорф. |
+ | |||
+ | |||
== Опитна постановка == | == Опитна постановка == | ||
− | #Да се импортира инсталация на Windows XP на виртуалната машина, от директория D:/it, като файлът на диска на виртуалната машина се запише на D:/ime/ | + | #Да се импортира инсталация на Windows XP на виртуалната машина, от директория D:/it, като файлът на диска на виртуалната машина се запише на D:/ime/*.vmdk |
− | # <span style="color:red">Преди да се включи виртуалният компютър </span> мрежовата карта да се [[VirtualBox#Мостов адаптер / Bridged adapter|пренасочи към мрежовата карта на хост компютъра и да се смени MAC адресът]] | + | # <span style="color:red">Преди да се включи виртуалният компютър </span> мрежовата карта да се [[VirtualBox#Мостов адаптер / Bridged adapter|пренасочи към мрежовата карта на хост компютъра (мостов адаптер) и да се смени MAC адресът]] |
− | #След включване на виртуалната машина [[Windows Name|да се смени името на компютъра]] | + | #След включване на виртуалната машина [[Windows Name|да се смени името на компютъра]] на phpX, където X е номера на работната станция. |
− | #[[Windows Network| | + | #Да се зададат на [[Windows Network| мрежовият интерфейс]] на PHP-сървъра следните настройки, където X е номера на работната станция: |
− | #*IP: 192.168.0. | + | |
+ | #*IP: 192.168.0.20'''X'''/24, | ||
#*Gaytway: 192.168.0.11 | #*Gaytway: 192.168.0.11 | ||
#*DNS: 192.168.0.10X | #*DNS: 192.168.0.10X | ||
− | == | + | == Конфигуриране PHP, Apache, Windows== |
+ | === Инсталация Apache === | ||
[[Video Apache#Windows XP Install|Да се инсталира Apache със следните настройки:]] | [[Video Apache#Windows XP Install|Да се инсталира Apache със следните настройки:]] | ||
*Network Domain: pcX.abv.bg | *Network Domain: pcX.abv.bg | ||
*Server name: apache.pcX.abv.bg | *Server name: apache.pcX.abv.bg | ||
*Administrator email: student@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.) | ||
− | + | Win | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | При използване на PHP с интегриран Windows инсталатор, всички настройки се конфигурират автоматично | |
− | |||
− | |||
== DNS == | == DNS == |
Revision as of 15:41, 16 March 2012
Contents
Цел на упражнението
Конфигуриране на PHP/Apache Web server.
PHP е скриптов език за програмиране използван за сървърни приложения и e най-популярния за разработване на динамично уеб-съдържание. Автор на езика е датчанинът от канадски произход Размус Лердорф.
Опитна постановка
- Да се импортира инсталация на 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.)
Win
При използване на PHP с интегриран Windows инсталатор, всички настройки се конфигурират автоматично
DNS
- Да се добави към зоновия файл на pcX.abv.bg А запис за домейна apache.pcX.abv.bg, който да сочи към 192.168.0.22Х.
- Да се добави към зоновия файл на pcX.abv.bg CNAME запис за домейна www.pcX.abv.bg, който да сочи към apache.pcX.abv.bg.
Конфигуриране на няколко домейна (virtual host)
Задача.Да се конфигурират два виртуални хоста
Стъпки на работа:
- Да се създадат директории c:/web/apache и c:/web/www
- Да се разкоментира реда от конфигурационния файл:
Include conf/extra/httpd-vhosts.conf
- Да се редактира файла httpd-vhosts.conf:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin student@pc1.abv.bg
DocumentRoot "C:/web/apache"
ServerName apache.pc1.abv.bg
<Directory "C:/web/apache">
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin student@pc1.abv.bg
DocumentRoot "C:/web/www"
ServerName www.pc1.abv.bg
<Directory "C:/web/www">
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
- Да се създадат две различни страници (index.html) и да се сложат в двете директoрии на web сървъра
- да се тества
Копиране на HTML
- да се копира страница на abv.bg и да се сложи на www.pcX.abv.bg
Инсталиране на Apache Web Server.
(виж ... ) Задайте "custom" инсталация и променете инсталационната директория на c:\Apache
Инсталиране на PHP
(Има две разновидности за Windows - "Thread Safe" - ако ще се използва Apache Web Server и "Non Thread Safe" - ако ще ползваме IIS Web Server.) - Инсталирайте в директория c:\PHP - Избираме опция "Apache 2.2.x Module" - Настройка на Apache да работи с PHP. Редактираме конфигурационния файл на Apache – httpd.conf. В края на файла добавяме:
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
Тестване
Създайте текствов файл index.php и добавете в него:
<?php // PHP скриптът започва с <?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
5. Да се създаде фишинг страница на mail.abv.bg.