Правильный конфиг хоста Nginx для сайта на Drupal 8

Drupal: 

Иногда при неправильной настройке может появляться сообщение "The requested page could not be found." или "Запрашиваемая страница не найдена."

Это может возникать в том числе из-за ошибочной конфигурации веб-сервера и хоста Nginx. Обратитесь к хостеру или на своей впс настройте хост.

Тут правильный конфигурационный файл хоста https://www.nginx.com/resources/wiki/start/topics/recipes/drupal/

  1. server {
  2. server_name www.EXAMPLE.COM .EXAMPLE.COM;
  3. root /var/www/EXAMPLE.COM/www;
  4.  
  5. location = /favicon.ico {
  6. log_not_found off;
  7. access_log off;
  8. }
  9.  
  10. location = /robots.txt {
  11. allow all;
  12. log_not_found off;
  13. access_log off;
  14. }
  15.  
  16. # Very rarely should these ever be accessed outside of your lan
  17. location ~* \.(txt|log)$ {
  18. allow 192.168.0.0/16;
  19. deny all;
  20. }
  21.  
  22. location ~ \..*/.*\.php$ {
  23. return 403;
  24. }
  25.  
  26. location ~ ^/sites/.*/private/ {
  27. return 403;
  28. }
  29.  
  30. location ~ (^|/)\. {
  31. return 403;
  32. }
  33.  
  34. location / {
  35. # try_files $uri @rewrite; # For Drupal <= 6
  36. try_files $uri /index.php?$query_string; # For Drupal >= 7
  37. }
  38.  
  39. location @rewrite {
  40. rewrite ^/(.*)$ /index.php?q=$1;
  41. }
  42.  
  43. location ~ '\.php$|^/update.php' {
  44. fastcgi_split_path_info ^(.+?\.php)(|/.*)$;
  45. #NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
  46.  
  47. include /etc/nginx/conf.d/fastcgi_params.conf;
  48.  
  49. fastcgi_param SCRIPT_FILENAME /var/www/EXAMPLE.COM/www$fastcgi_script_name;
  50. fastcgi_param DOCUMENT_ROOT /var/www/EXAMPLE.COM/www;
  51.  
  52. fastcgi_param PHP_ADMIN_VALUE upload_tmp_dir=/var/www/EXAMPLE.COM/tmp/upload;
  53. fastcgi_param PHP_ADMIN_VALUE session.save_path=/var/www/EXAMPLE.COM/tmp/sessions;
  54. }
  55.  
  56. # Fighting with Styles? This little gem is amazing.
  57. location ~ ^/sites/.*/files/styles/ { # For Drpal >= 7
  58. try_files $uri @rewrite;
  59. }
  60.  
  61. location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
  62. expires max;
  63. log_not_found off;
  64. }
  65. }