Конфігурація Nginx у мене кидає 404 для .php
:
## Any other attempt to access PHP files returns a 404.
location ~* ^.+\.php$ {
return 404;
}
Однак у мене є якийсь файл index.php у підпапці, який я хочу запустити. Поточний конфігурація виглядає так:
location = /sitename/subpage/index.php {
fastcgi_pass phpcgi; #where phpcgi is defined to serve the php files
}
location = /sitename/subpage2/index.php {
fastcgi_pass phpcgi;
}
location = /sitename/subpage3/index.php {
fastcgi_pass phpcgi;
}
вона працює чудово, але проблема - це повторювані місця, і якщо є багато підсторінок, то конфігурація стає величезною.
Я спробував підстановку як * і деякий регулярний вираз, який говорить, що тест nginx пройшов, але не завантажує сторінку, тобто 404. Що я спробував, це:
location = /sitename/*/index.php {
fastcgi_pass phpcgi;
}
location ~* ^/sitename/[a-z]/index.php$ {
fastcgi_pass phpcgi;
}
Чи є спосіб, щоб я міг мати якесь ім'я шляху в такому місці, як регулярний вираз або підстановочний знак?
+
виправили це.