Структура директорий:
d:\server\ - директория для хранения ПО и данных сервера
d:\server\bin\ - программное обеспечение
d:\server\bin\nginx
d:\server\bin\php
d:\server\bin\mariadb
d:\server\data\ - хранение данных (например логов)
Nginx
Скачиваем последнюю версию Nginx и размещаем в директории d:\server\bin\nginx.
Настройка
В файле конфигурации D:\server\bin\nginx\conf\nginx.conf нужно добавить строку внутри блока http
include vhosts/*.conf;
и создать директорию D:\server\bin\nginx\conf\vhosts
Виртуальный хост
Для теста можно создать хост для фреймворка Laravel. Для этого нужно разместить в директории D:\server\bin\nginx\conf\vhosts файл laravel.conf
server {
listen 80;
server_name laravel.test;
root D:/projects/php/laravel.test/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
После этого добавляем строку
127.0.0.1 localhost laravel.test
в файл C:\Windows\System32\drivers\etc\hosts
PHP
Скачиваем PHP (Non Thread Safe) и размещаем в директории d:\server\bin\php. Также нужно установить компонент Visual C++ Redistributable for Visual Studio. Ссылку на эту программу можно найти в левой боковой колонке страницы
И подключаем необходимые модули расскоментируя строки extension=имя_модуля в файле D:\server\bin\php\php.ini
MariaDB
Скачиваем последнюю версию MariaDB. Я обычно выбираю MSI-пакет и устанавливаю в директорию d:\server\bin\mariadb. Впрочем эту программу можно разместить где угодно.
Но можно скачать архивный вариант и использовать разные версии сервера. Только нужно будет в bat-файлах настроить запуск и остановку сервера.
Запуск, остановка и перезапуск сервера
Нужно скачать полезную программу RunHiddenConsole.exe, которая позволяет скрыть консоль после запуска программы. Можно сохранить в директории d:\server\bin\.
bat-файлы для управления сервером
start.bat
pushd d:\server\bin\nginx
start nginx.exe
popd
d:\server\bin\RunHiddenConsole.exe "d:\server\bin\php\php-cgi.exe" -b 127.0.0.1:9000 -c "d:\server\bin\php\php.ini"
stop.bat
taskkill /IM nginx.exe /F
taskkill /IM php-cgi.exe /F
restart.bat
call stop.bat
call start.bat
EXIT /b
Прежде чем написать комментарий, нужно авторизаться на сайте