nginx исключения из 301 редиректа

baas
На сайте с 17.09.2012
Offline
171
4966

Добрый вечер.

Подскажите пожалуйста.

Как из 301 редиректа можно исключить главную страница http://www.site.local, что бы страница открывалась как обычно, без редиректа, а к остальным страницам сайта был произведен 301 редирект?

вэб сервер nginx.

Спасибо за понимания.

Настройка BSD систем. (https://www.fryaha.ru) Знание сила, незнание Рабочая сила!
Оптимизайка
На сайте с 11.03.2012
Offline
396
#1

можно прописать в location со знаком "равно", у него самый высокий приоритет, например

location = / {

тут что то типа try_files

}

location / {

а тут редирект

}

⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!
baas
На сайте с 17.09.2012
Offline
171
#2
Оптимизайка:
можно прописать в location со знаком "равно", у него самый высокий приоритет, например

location = / {
тут что то типа try_files
}

location / {
а тут редирект
}

server {

listen 1.4.5.6:80;

server_name sete.local;

root /usr/local/www/sete.local;

location =/ {

try_files $uri $uri/ /index.php?$args;

root /usr/local/www/sete.local;

}

location ~ \.php$ {

fastcgi_pass unix:/tmp/www.sock;

fastcgi_index index.php;

include fastcgi_params;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

}

location / {

return 301 http://ttt.sete.local$request_uri;

root /usr/local/www/sete.local;

}

location =/robots.txt {

root /usr/local/www/sete.local;

}

}

Сделал так, главная страница выдает 403 ошибку, остальные страницы редиректятся.

Оптимизайка
На сайте с 11.03.2012
Offline
396
#3

Ну если у вас главная index.php то сразу и напишите

location = / {

fastcgi_pass unix:/tmp/www.sock;

fastcgi_index index.php;

include fastcgi_params;

fastcgi_param SCRIPT_FILENAME $document_root/index.php;

}

baas
На сайте с 17.09.2012
Offline
171
#4
Оптимизайка:
Ну если у вас главная index.php то сразу и напишите
location = / {
fastcgi_pass unix:/tmp/www.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
}

Спасибо, но страница как то коряво открывается.

Будем ждать прогера, что бы разеснил по редиректу.

Оптимизайка
На сайте с 11.03.2012
Offline
396
#5

Наверное, из-за того что на странице есть ссылки на другие урлы (css, картинки, js) на которые происходит редирект, строго по ТЗ озвученному выше :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий