Мой сервер работает на Ubuntu 16.04. Одно из моих веб-приложений (приложение php) работало на моем сервере nginx. Чтобы установить ModSecurity, я полностью удалил NGINX, а затем выполнил следующие шаги, чтобы выполнить и установить ModSecurity для NGINX как динамический модуль:
https://www.nginx.com/blog/compiling-and-installing-modsecurity-for-open-source-nginx/
Проблема в том, что мой NGINX работает, а мое веб-приложение - нет. Когда я пытаюсь зайти в свой домен, я получаю следующую ошибку: «404 Not Found - nginx / 1.15.7». Я попытался создать тестовый html-проект в / var / www / html и попытался просмотреть этот проект и обнаружил, что HTML-код в порядке, но если я попытаюсь разместить какой-нибудь файл PHP, он не работает. Хотя я проверил и обнаружил, что php-fpm работает. Здесь я даю свой серверный блок:
server {
modsecurity on;
modsecurity_rules_file /etc/nginx/modsec/main.conf;
root /var/www/html/mysite/public;
index index.php index.html index.htm index.nginx-debian.html;
server_name www.mysite.com mysite.com;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html/mysite/public;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Здесь следует упомянуть, что серверный блок находится по адресу /etc/nginx/conf.d/mysite.com.conf
а мой проект разработан на Laravel.