Welcome! Log In Create A New Profile

Advanced

disable_symlinks + try_files = fail

April 26, 2012 09:29AM
Здравствуйте.

"disable_symlinks" не работает вместе с директивой "try_files".

Имеется симлинк "test.txt -> /home/otheruser/config.php"

Вот с таким конфигом виртхоста, http://test.ru/test.txt отображет 403-ю ошибку в браузере:

-----------------------------------------------------
server {
listen 192.168.0.1:80;
server_name test.ru www.test.ru;
location / {
proxy_pass http://192.168.0.1:8081;
include proxy.inc;
location ~.*\.(gif|jpg|png|ico|txt|js|css)$ {
root /home/test/public_html;
}
}
}
-----------------------------------------------------

А вот с конфигом, в котором используется try_files, http://test.ru/test.txt отображает содержимое файла другого юзера:

-----------------------------------------------------
server {
listen 192.168.0.1:80;
server_name test.ru www.test.ru;
root /home/test/public_html;
location / {
location ~.*\.(gif|jpg|png|ico|txt|js|css)$ {
try_files $uri @backend;
}
error_page 405 = @backend;
add_header X-Cache "HIT from Backend";
proxy_pass http://192.168.0.1:8081;
include proxy.inc;
}
location @backend {
internal;
proxy_pass http://192.168.0.1:8081;
include proxy.inc;
}
location ~ .*\.(php|jsp|cgi|pl|py)?$ {
proxy_pass http://192.168.0.1:8081;
include proxy.inc;
}
}
-----------------------------------------------------
Это бага или фича?
Если фича, как будет выглядеть корректный конфиг, чтобы и try_files работало, проксируя запросы в апач, если файл не существует, и запросы к существующим файлам проверялись на симлинкнутость?
Subject Author Posted

disable_symlinks + try_files = fail

charlie April 26, 2012 09:29AM

Re: disable_symlinks + try_files = fail

charlie April 26, 2012 09:56AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 251
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready