@JunDevTest
Контакты: thejundev@gmail.com | @juniordev

Как сделать виртуальный редирект на индексный файл средствами Nginx?

Приветствую всех.
Есть файл index.php, есть главная страница сайта. По каким-то причинам, CMS не определят главную страницу и выводит свою 404 ошибку. При этом, если явно перейти по адресу: https://example.com/index.php всё работает и открывается главная страница. Индексный файл в конфиге Nginx задан корректно.
index index.html index.php;
Ну и собственно он работает, так как открывается главная страница сайта, ошибка скорее всего, где-то на стороне приложения. Но в виду отсутствия такого опыта, я не знаю где её искать. Сейчас временно решил вопрос так:
if ($request_uri = "/") {
    return 301 "/index.php";
}

Конечно, оно то работает, но в URL появляется /index.php ( оно и понятно, 301 редирект же ). Как сделать виртуальный редирект ( симлинк ) на index.php, например, с помощью location и rewrite чтобы при этом физически никуда не переходить?
  • Вопрос задан
  • 191 просмотр
Пригласить эксперта
Ответы на вопрос 2
@freezl
Предположу, что делается перенаправление с http на https таким образом
server {
    listen 80;
    server_name example.com;
    return 301 https://$server_name;
}

А адрес перенаправления должен быть такой https://$server_name$request_uri
Это если гадать. Если нужна какая то конкретика, то выкладывайте весь конфиг - надо смотреть что там накручено.
ЗЫ. Да и CMS какая?
Ответ написан
@q2digger
никого не трогаю, починяю примус
Попробуйте вот так.
location / {
        try_files $uri $uri/ /index.php;
    }
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы