Для начала нужно настроить entware.
Устанавливаем nginx и php-fpm
opkg install nginx php7-fpm
Теперь нужно отредактировать файл /opt/etc/nginx/nginx.conf:
-user nobody;
+user nobody nogroup;
location / {
- root /opt/share/nginx/html;
- index index.html index.htm;
+ root /opt/share/www;
+ index index.php index.html index.htm;
}
location = /50x.html {
- root html;
+ root /opt/share/nginx/html;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
-#location ~ \.php$ {
-# root html;
-# fastcgi_pass 127.0.0.1:9000;
-# fastcgi_index index.php;
-# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
-# include fastcgi_params;
-#}
+location ~ \.php$ {
+ root /opt/share/www;
+ fastcgi_pass unix:/opt/var/run/php7-fpm.sock;
+ fastcgi_index index.php;
+ fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
+ include fastcgi_params;
+}
В файле /opt/etc/php.ini нужно найти и раскомментировать, убрав точки с запятой в начале строки, следующие строки:
cgi.force_redirect = 1
cgi.redirect_status_env = ;
В файле /opt/etc/php7-fpm.d/www.conf заменить
-;listen.owner = www-data
-;listen.group = www-data
-;listen.mode = 0666
+listen.owner = nobody
+listen.group = nogroup
+listen.mode = 0666
Теперь нужно перезапустить php-fpm и nginx:
/opt/etc/init.d/S79php7-fpm restart
/opt/etc/init.d/S80nginx restart
На этом настройка закончена. Файлы загружать в директорию /opt/share/www.
Веб сервер доступен по адресу роутера с портом 8080 (напр. 192.168.1.1:8080)
в чем приемущество над установленным httpd? сриншеты увидеть можно?
Ну в моем случае нужен именно nginx для контроля выдачи файлов скриптом (php проверяет можно ли выдать файл пользователю, а nginx его выдает).
Какие скриншоты интересуют?
Спасибо за статью. Помогла.
Не забываем менять в nginx.conf
listen 80;
на
listen 8080;
Если порт 80 занят вебом роутера.
Теперь бы еще инструкцию, как HTTPS прикрутить к nginx и будет счастье.
Ещё бы в мир пробросить )