закрыто. все ушли...
username
дневник заведен 11-03-2007
постоянные читатели [15]
Agent_Provocateur, Dummy, Eroshka, essaria, istoria, Marine, Sirin, stervochka-m, WILD KAT, вейлуонике, Нява, тень воина, Тин, Шпулька, Эль
закладки:
цитатник:
дневник:
местожительство:
Киев, Украина
15-01-2008 19:20
Устанавливаем и настраиваем сервер на локальной машине под управлением Windows.

Есть довольно много пакетных инсталляторов. Таких как Denwer, AppServ, xammp, USB Webserver, TopServer и т.п.
Но сегодня не о них речь.
Дело в том, что они, во-первых, дают довольно урезанные возможности и имеют проблемы с ручным обновлением и расширением, а во-вторых, на них сложно построить настоящий сервер, который будет видно извне.

Для этой цели нам понадобится сервер Apache, интерпретатор PHP 5, сервер MySQL и сервер SMTP.
Скачать их можно тут (все источники имеют зеркала в UA-IX или сами находятся в UA-IX):
Apache – http://apache.net.ua/httpd/binaries/win32/ (apache_2.2.6-win32-x86-openssl-0.9.8e.msi)
PHP – http://www.php.net/downloads.php#v5 (PHP 5.2.5 installer)
MySQL – http://dev.mysql.com/downloads/mysql/5.1.html#win32 (Windows ZIP/Setup.EXE (x86))
SMTP - http://upload.com.ua/link/900077554

Устанавливаем MySQL сервер.
По ходу установки инсталлятор будет задавать всяческие вопросы.
Настраивайте сервер так как вам будет удобно.
Главное - установить и запомнить пароль root пользователя, чтобы не было доступа без пароля с одной стороны, и чтобы иметь возможность хоть что-нибудь сделать, с другой.

Устанавливаем Apache сервер.
При установке Apache следует указать доменное имя и имя сети - localhost.
Так же для удобства можно вынести директорию установку в корень диска.
Я лично устанавливаю его на диск D:.

Устанавливаем PHP интерпретатор.
Директорию установки я обычно указываю как корень сервера Apache.
А PHP устанавливаю как модуль Apache. (В данном случае в инсталляторе нужно указать - Apache 2.2.x Module)
Во время установки в списке Extensions добавляем все необходимые расширение.
Наиболее часто используемые: GD2 - для обработки изображений, Multi-Byte String - для корректной работы со строками в UTF-8 кодировке, MySQL и MySQLi - для работы с базой данных MySQL, XSL - для работы с XLST шаблонами.
В любом случае - если что-то забудете - можно будет доставить это потом без проблем.

Устанавливаем SMTP сервер.
Тут вопросов не должно возникнуть никаких.

Теперь перезапускаем Аpache.
В главном меню после инсталляции добавился пункт Апача, где в пункте «Control Apache Server» лежат ярлычки управления, которые я лично для удобства переношу в панель быстрого запуска.

Настраиваем Аpache сервер.
Для настройки Аpache используется файл httpd.conf, который находится в директории conf в корне сервера ([путь_к_установленному_апачу]\conf\).
Для начала нужно раскомментировать строку:
#LoadModule rewrite_module modules/mod_rewrite.so
(убрать ведущий диез (#)), в случае, если вы используете ЧПУ УРЛы.

Далее - для удобства работы можно перенести корневую директорию http документов.
Для этого нужно отредактировать директиву DocumentRoot.
Например:
DocumentRoot "D:/htdocs"

При этом нужно не забыть изменить путь в директиве <Directory>, которая находится ниже и откомментирована как "This should be changed to whatever you set DocumentRoot to.". В ней находятся все основные настройки директории.

Так же необходимо изменить директиву DirectoryIndex, в которой задаются имена файлов, которые будут выдаваться по умолчанию при входе в директорию через http без указания конкретного файла. Файлы нужно перечислять через пробел. Например:
DirectoryIndex index.php index.html index.htm

Теперь настроим виртуальные хосты.
Найдите в файле конфигурации место, где следует указывать директивы <VirtualHost>.
Перед указанием <VirtualHost> нужно указать директивы NameVirtualHost, которые будут указывать, на каких ip-адресах Apache должен слушать виртуальные домены.
Для работы только с локальной машины, достаточно указать:
NameVirtualHost 127.0.0.1:80
Чтобы виртуальные хосты правильно отображались из внешней сети, которую подключен ваш компьютер, следует указать:
NameVirtualHost xxx.xxx.xxx.xxx:80
где xxx.xxx.xxx.xxx - ip-адрес вашего компьютера.

Далее для каждого проекта нужно прописать директивы виртуальных хостов. Например:
<VirtualHost [my_project_url]:80>
ServerAdmin mymail@mail.com
DocumentRoot [my_project_root_directory_name]
ServerName [my_project_server_name]
</VirtualHost>

Покончив с настройкой httpd.conf, нужно прописать редиректы для ваших проектов в файл hosts (C:\WINDOWS\system32\drivers\etc\).
Просто в конец файла по аналогии с уже имеющимися редиректами дописать свои.
Например:
127.0.0.1 [my_project_url]
Для того чтобы другие пользователи сети видели ваши виртуальные диски - им нужно также подправить свой файл hosts, но переправлять запрос не на 127.0.0.1, а на ваш ip-адрес - xxx.xxx.xxx.xxx
Исключая, естественно, случай доменов, которые имеют DNS-сервера, указывающие на ваш ip.

Настраиваем PHP интерпретатор.
За настройки PHP отвечает файл php.ini, который находится в корневой папке, в которую был установлен PHP.
Настраивайте PHP так, как вам нужно. Здесь я опишу только некоторые настройки, которые используются довольно часто.
short_open_tag - эта директива позволяет включить использование коротких тэгов (<?). По-умолчанию отключена.
error_reporting - отвечает за типы ошибок, которые будут показываться. Поскольку сервер будет использоваться для разработки и тестов - я выставляю значение - E_ALL | E_STRICT - чтобы выводились все ошибки и пометки, включая стриктовые.
display_errors - отвечает за вывод ошибок на экран - опять же - поскольку сервер тестовый - эту опцию лучше включить.
post_max_size - максимальный размер принимаемой информации
upload_max_filesize - максимальный размер загружаемого файла
magic_quotes_... - эти директивы отвечают за автоматическое экранирование спецсимволов для различного типа данных. Обычно для удобства - отключаются, а экранирование делается вручную в нужных местах.

Настраиваем SMTP сервер.
Указанный выше SMTP сервер имеет обычный интерфейс и интуитивно понятный мастер настроек.
Также поддерживается русско- и украиноязычный интерфейсы.
Так что, я думаю, настройке этого сервера уделять внимания много не будем.
Есть только несколько небольших опций, на которые нужно обратить внимание, чтобы сервер начал работать без какой-либо тонкой настройки.
А именно - в опциях сервера, следует отключить Аутентификацию; проверить, чтобы было разрешено отправлять почту только с ваших адресов - лучше всего только с локального адреса (127.0.0.1). И чтобы номер порта SMTP сервера совпадал с указанным в php.ini в директиве smtp_port (в группе mail function) - какой именно порт использовать - это уже на ваш выбор.

Вот, пожалуй, и все что необходимо знать для начала.
Мы получили рабочий сервер, который можем настраивать так, как нам будет угодно.
Теперь вы можете настроить свой сервер без проблем под любой проект, какой вам только нужен.

Помните! Что все изменения, внесенные в httpd.conf и php.ini, вступают в силу только после перезагрузки сервера Apache.

При описанной выше установке сервер будет виден из локальной сети и сети Интернет (в случае если ваша машина не находится за NAT'ом – в противном случае понадобится дополнительно конфигурировать роутер или раздающий сервер)

Ваш комментарий:
Камрад:
Гость []
Комментарий:
[смайлики сайта]
Дополнительно:
Автоматическое распознавание URL
Не преобразовывать смайлики
Cкрыть комментарий
Закрыть