Есть сайт site.ru. В корне лежат три папки со скриптами: folder1, folder2, folder3.
Они должены быть доступны по прямой ссылке.
Т.е. я должен иметь возможность запустить скрипт
site.ru/folder3/script.php из браузера.
Все запросы к главной сайта сайту, должны отправляться на скрипт-обработчик.
Например, при запросе:
site.ru/bla-bla-bla
Должен вызываться скрипт:
site.ru/folder1/index.php?get=bla-bla-bla
Если я добавляю директиву
rewrite ^/(.*)$ /folder1/index.php?get=$1 last;
То у меня редиректит всё. Т.е. напрямую к папке не обратиться.
В интернете советую прописать её в location / , однако если я заменяю имеющиеся там данные - сайт начинает выдавать 500-ую ошибку.
Текущий конфиг выглядит так:
server {
server_name site.ru www.site.ru;
listen 255.255.255.255;
disable_symlinks if_not_owner from=$root_path;
set $root_path /var/www/site/data/www/site.ru;
location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
root $root_path;
access_log /var/www/nginx-logs/alishort isp;
access_log /var/www/httpd-logs/site.ru.access.log ;
error_page 404 = @fallback;
}
location / {
proxy_pass http://255.255.255.255:81;
proxy_redirect http://255.255.255.255:81/ /;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
#
}
location ~* ^/(webstat|awstats|webmail|myadmin|pgadmin)/ {
proxy_pass http://255.255.255.255:81;
proxy_redirect http://255.255.255.255:81/ /;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
}
location @fallback {
proxy_pass http://255.255.255.255:81;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
}
location ^~ /webstat/ {
auth_basic "Restricted area";
auth_basic_user_file /var/www/site/data/etc/1060800.passwd;
try_files $uri @fallback;
}
include /usr/local/ispmgr/etc/nginx.inc;
}