для настройки роутинга CMS общепринятая практика делать try_files, например, так
https://book.cakephp.org/2.0/en/installation/url-rewriting.html логика тут примерно, как вы написали "если файл существует, то отдать его, если файла нет, или он с расширением php, то отправить на fastcgi" что делать с "можно слить файлы конфигурации" - в принципе, странно, что вы об этом думаете заранее. обычно, проблемы решаются по мере поступления )) а) необязательно файлы конфигурации хранить внутри сайта б) можно сделать вот так location /config/ { return 404; } в) можно хранить конфигурацию в виде php (а не ini, yml), это, кстати, самое выгодное в плане производительности. и такой файл (внутри которого определены только переменные) слить не получится. 2017-03-15 1:49 GMT+05:00 valmon <nginx-fo...@forum.nginx.org>: > В общем, получилась вот такая конструкция > location / { > root /home/admin/web/site.com/public_html; > location ~ ^/[A-Z][A-Za-z]*. { > if (!-e $request_filename) { > rewrite ^/(.*)$ /core/Load.php?q=$1 last; > } > } > > location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|css|js)$ { > expires max; > } > location ~ [^/]\.php(/|$) { > fastcgi_param SCRIPT_FILENAME > $document_root$fastcgi_script_name; > if (!-f $document_root$fastcgi_script_name) { > return 404; > } > > fastcgi_pass 127.0.0.1:9000; > fastcgi_index index.php; > include /etc/nginx/fastcgi_params; > } > } > > Но получается, что можно слить файлы конфигурации, так как if (!-e > $request_filename) > > Posted at Nginx Forum: https://forum.nginx.org/read. > php?21,272923,272934#msg-272934 > > _______________________________________________ > nginx-ru mailing list > nginx-ru@nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru >
_______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru