Страница 1 из 1
Nginx: Переадресовать папку в один php-файл
Добавлено: 10 окт 2012, 15:13
Tester64
Подскажите пожалуста, Куда и Что нужно добавить в настройки Nginx для вручную (через Настройки-Домены-ручное управление доменами-добавить) добавленый сайт "test.ru" чтобы можно было войдя на "test.ru/user1/...(любое продолжение из папок и файлов)" попать на "test.ru/user1/index.php" ???
p.s. Точно знаю что в Апаче это возможно...
Добавлено: 10 окт 2012, 15:17
Максим
Никуда и ничего не нужно добавлять, по умолчанию и так index.php открывается в любой папке.
Добавлено: 10 окт 2012, 15:23
Tester64
Это и так понятно. А как сделать чтобы "test.ru/user1/file.php", "test.ru/user1/folder1/", "test.ru/user1/folder1/file3.jpg" и "test.ru/user1/folder1/file2.php" все равно попадали на "test.ru/user1/index.php" ??? Что-то вроде защиты содержимого папки через парольную защиту в PHP.
Добавлено: 10 окт 2012, 15:36
Максим
Способов много, просто работают по разному, например:
rewrite .* /index.php;
или так
try_files $uri /index.php;
или так
location ~* ^.*(/|\..*) {
try_files $uri $uri/ /index.php;
}
Добавлено: 10 окт 2012, 20:48
Tester64
Спасибо за подсказку! Почти получилось...
Результат такой:
location /users/ {
# Перекидывает на другой файл без замены строки в броузере (скрытно для пользователя)
# в ключ 'p' ложится путь вроде /users/sdfg/dsfg
try_files $uri /users/index.php?p=$uri;
# Показывает картинку не меняя пути
# try_files $uri /img/announce_unread.gif;
# перекидка пути на картинку. (меняет путь для пользователя)
# rewrite ^(.*)$ /img/no.gif redirect;
}
Увы... успешно показывает если файл существует... и если большая вложеность почему-то отправляет на 404