htaccess -> 404
Maxim Dounin
mdounin на mdounin.ru
Вс Янв 22 21:35:15 UTC 2012
Hello!
On Mon, Jan 23, 2012 at 12:21:45AM +0300, Роман wrote:
> Вроде бы простая задачка но что то не получается ее реализовать.
>
> Есть у меня файлик index.php, на который идут все запросы
>
>
> location / {
> ...
> try_files $uri $uri/ /index.php?$uri&$args;
> }
>
> и есть файлик .htaccess
>
> Хочу чтобы при запросе к файлу .htaccess выдавалась ошибка 404
> сгенерированная в недрах /index.php.
>
>
> попробовал так
>
> location ~ /\.(ht) {
Just a side note: скобки вокруг "ht" - лишние.
> return 404;
> }
>
> location / {
> ...
> error_page 404 = /index.php?$uri&$args;
> }
>
>
> но не получается.
> Отдается стандартная страница nginx.
>
> Подскажите решение задачки.
Указывать "error_page 404" надо там, где возникает 404'я ошибка.
Или на более высоких уровнях, чтобы в нужное место оно
отнаследовалось.
В вашем случае 404'я ошибка возникает в "location ~ /\.ht",
соответственно нужно указать error_page либо там, либо (что обычно
более логично) - на уровне server.
error_page 404 ...
location / {
try_files ...
}
location ~ /\.ht {
return 404;
}
Maxim Dounin
Подробная информация о списке рассылки nginx-ru