@T3R3AND

Правильный редирект с изменением URL?

Здравствуйте! Не знаю решения на свой вопрос.
Хочу сделать что бы когда пользователь вводил какую либо ссылку в адресной строке сайта, его всегда возвращало на site.ru/, пример: пользователь открыл сайт как site.ru/test/33 ему сделали редирект на site.ru/. Но и при этом что бы были доступные $_GET и другие ресурсы сайта, подскажите, пожалуйста =)
  • Вопрос задан
  • 88 просмотров
Решения вопроса 1
@mureevms
Думал обойтись простым реврайтом, но не тут-то было, оказалось немного сложнее.
Разрешено только обращение к index файлу, в примере это index.php, в нем и должна быть вся логика работы сайта. Если нужен доступ к другим php файлам, исправить location = /index.php на что-то типа location ~ /\.php. Все остальное запрещено.

server {
    listen  80;
    server_name site.ru;

    root /var/www;
    index index.php;

# Если путь существует
    location = / { }

    location = /index.php {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
    }

    location / {
        deny all;
        return 302 /;
    }

# Если путь не существует
    error_page 404 = @notfound;
    
    location @notfound {
        return 302 /;
    }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы