(Apache+Mysql+PHP)=server Часть1

Sunday, December 23, 2007 12:47
Категория: Статьи, Хостинг

Создание Web-сервера (Apache, Mysql, PHP) Часть1

Сегодня на винте откопал статью по настройки сервака.Спасибо моему другу Eliziym

server

В этой статье описана установка веб-сервера. Установка производится на
Linux Slackware 10.2.

На момент написания статьи были использованный последние версии, а именно:

Apache - 2.0.58
MySQL - 5.0.22
PHP - 5.1.4

Так же, вы всегда сможете закачать “свежие” версии софта с сайтов:

http://www.apache.org
http://www.php.net
http://www.mysql.com

Начнём с того, что закачаем всё программное обеспечение:

#wget http://mirrors.ccs.neu.edu/Apache/dist/httpd/httpd-2.0.58.tar.bz2
#wget http://mysql.dn.ru/Downloads/MySQL-5.0/mysql-5.0.22.tar.gz
#wget http://ru.php.net/get/php-5.1.4.tar.bz2/from/this/mirror

Установка Apache:

Разархивируем архив:

#tar -xjvf httpd-2.0.58.tar.bz2

Далее заходим в директорию, которую мы только что распаковали:

#cd httpd-2.0.58/

Начинаем установку:

#./configure –prefix=/usr/local/httpd (–prefix=/user/local/httpd - описывает путь установки)
#make
#make install

Далее мы должны перейти в директорию /usr/local/httpd/conf и
отредактировать файл httpd.conf:

#cd /usr/local/httpd/conf/
#nano httpd.conf

Находим и изменяем строки в конфигурационном файле:

ServerAdmin eliziym@example.com
(вместо eliziym@example.com должен быть ваш почтовый ящик)
ServerName www.example.com:80
(www.example.com:80 - здесь вы должны указать адрес сервера и через двоеточие порт)


Находим строки:


Options FollowSymLinks
AllowOverride None

И меняем их на:


Options None
AllowOverride None

Находим:


Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all

Меняем на:


Options None
AllowOverride None
Order allow,deny
Allow from all

Далее скрываем информацию о версии Apache и немного защищаем его. Для
этого редактируем в конфигурационном файле следующие записи:

ServerTokens Prod
ServerSignature Off
User nobody
Group nobody
Timeout 45
UserDir disable

Выставляем нужные права доступа:

#cd /usr/local/httpd/
#chown root . bin conf logs
#chgrp root . bin conf logs
#chmod 755 . bin conf logs
#chown root /usr/local/httpd/bin/httpd
#chgrp root /usr/local/httpd/bin/httpd
#chmod 511 /usr/local/httpd/bin/httpd

Установка MySQL:

Нужно добавить новую группу и пользователя в систему прежде чем начинать
установку:

#groupadd mysql
#useradd -g mysql mysql

Разархивируем архив и переходим в полученную директорию:

#tar -zxvf mysql-5.0.22.tar.gz
#cd mysql-5.0.22/

Далее приступаем к конфигурированию и установке:

#./configure –prefix=/usr/local/mysql (–prefix=/user/local/mysql - описывает путь установки)
#make
#make install

Копируем конфигурационный файл:

#cp support-files/my-medium.cnf /etc/my.cnf

Переходим в директорию /usr/loca/mysql и выполняем там установку
административных таблиц:

#cd /usr/local/mysql
#bin/mysql_install_db -user=mysql

Выставляем нужные права доступа:

#chown -R root .
#chown -R mysql var
#chgrp -R mysql .

Затем нам нужно будет запустить сервер, подключиться к нему и изменить
пароль:

#/usr/local/mysql/bin/mysqld_safe &
#/usr/local/mysql/bin/mysql -u root

mysql> use mysql;
mysql> set password for ‘root’@'localhost’ = password(’passwd’);
mysql> flush privileges;
mysql> \q

Вместо слова passwd напишите свой пароль.

На этом установка MySQL сервера окончена.


Установка PHP:

Разархивируем архив:

#tar -xjvf php-5.1.4.tar.bz2

Переходим в полученную директорию:

#cd php-5.1.4/

Приступаем к конфигурированию и установке:

#./configure –with-apxs2=/usr/local/httpd/bin/apxs –with-mysql=/usr/local/mysql
#make
#make install

Скопируем конфигурационный файл:

#cp php.ini-recommended /usr/local/lib/php.ini

Теперь откроем отредактируем немного конфигурационный файл Apache:

#nano /usr/local/httpd/conf/httpd.conf

Добавляем в начало файла строку:

AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php-source .phps

Ищем строку “DirectoryIndex”, в её конец добавлем значение index.php.
Строка DirectoryIndex должна теперь выглядить так:

DirectoryIndex index.html index.html.var index.php

На этом установка всего программного обеспечения завершена. Осталось запустить, если у вас не запущен Apache или перезагрузить его, для вступления в силу новый параметров которые мы внесли в конфигурационный файл.

#/usr/local/httpd/bin/apachectl start - для запуска сервера
#/usr/local/httpd/bin/apachectl restart - для перезагрузки сервера

Всё!!!

Нужно проверить работоспособность всего установленого. Для этого мы
напишем скрипт на PHP:

#cd /usr/local/httpd/htdocs/
#nano mysql.php

?>?>?> $dblocation=”127.0.0.1″;

$dbuser=”root”;

$dbpasswd=”passwd”;

$dbcnx=mysql_connect($dblocation, $dbuser, $dbpasswd);

if(!$dbcnx)
{
echo(”Не удалось подключиться к базе данных”);

exit();
}

$dbq=mysql_query(”select version();”);

echo(mysql_result($dbq,0));
?>

В переменной “$dbpasswd” замените параметр “passwd” на пароль от вашей
базы данных(MySQL).

Теперь открываем любой браузер и переходим по ссылке http://127.0.0.1/mysql.php :

#lynx http://127.0.0.1/mysql.php

На этом установка, настройка и тестирование веб-сервера окончена.

Дополнение.

Virtual Host

Если вы хотите настроить виртуальные хосты, то вам нужно будет
использовать директивы и .Предположим, что в строке ServerName конфигурационного файла Apache мы
указали www.example.com:80. Нам нужно настроить виртуальный хост
forum.example.com и user.example.com Для этого открываем
конфигурационный файл и добавляем в его конец строки:



ServerName forum.example.com
ServerAdmin eliziym@example.com
DocumentRoot /usr/local/httpd/htdocs/forum

ServerName user.example.com
ServerAdmin eliziym@example.com
DocumentRoot /usr/local/httpd/htdocs/user

Здесь вместо ip адреса 192.168.0.66 - вы должны указать свой ip адрес,
если у вас их несколько, то просто поставьте вместо ip - *

В строке DocumentRoot вы должны указать директорию, в которой будут
храниться файлы принадлежащие этому виртуальному хосту. Предположим,
если у вас форум, то файлы форума вы должы поместить в директорию
/usr/local/httpd/htdocs/forum

После всех манипуляций мы должны перезагрузить сервер. Не забудьте
добавить нужные для ДНС сервера записи.

Copyright © 2006 Minkevich Vladislav (Eliziym) www.secnull.org

Оставить комментарий

Вы можете оставить комментарий или трекбэк с вашего сайта.