rewrite 301 при 404 ошибке

S
На сайте с 30.09.2016
Offline
469
#31
SeVlad:
Чёй-то? Есть 2 совершено чётких маркера - "page/" и цифры. По любому из них можно сделать серверный редирект.

Ну и как ты узнаешь, на какой странице пагинация закончится?

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
SeVlad
На сайте с 03.11.2008
Offline
1609
#32
Sitealert:
Ну и как ты узнаешь, на какой странице пагинация закончится?

А что разве так задача поставлена? Я так понял, что пагинацию вообще нафик. Иначе это какой ппц получается..

Если оставлять, то конечно, тут только движок скажет когда конец. Но в движках это по идее уже должно быть реализовано. Напр редирект (и не 301, а 302) на последнюю существующую страницу. (если чо - в ВП с пагинацией вообще оппа :) )

Или даже 200, а не 404.

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
iccup
На сайте с 01.05.2016
Offline
205
#33

что-то тут много понаписано, хотя уже я указал ссылку на уже решенную проблему - https://toster.ru/q/208680, только там структура урла другая, joomla, и fastcgi. У меня dle и nginx apache как модуль.

kimsufi.com ( https://www.kimsufi.com ) очень дешевые и качественные дедики https://clck.ru/gvF9p - антибот, использую уже 3 года.
E
На сайте с 22.06.2016
Offline
45
#34
iccup:
Что-то эффект тот же что и до.

Автор забыл уточнить, что подобное решение имеет шанс на успех, если ваш движок будет кешировать все действительные страницы в отдельных файлах :)

Я же вам еще на первой странице назвал директивы, в описании которых следует искать решение вашей "проблемы". Слово "проблема" взял в кавычки, потому что проблема надуманная. Вам сразу же два раза было сказано, что в обычных условиях в подобном перенаправлении нет никакой необходимости. Списки на "обложке" сайта обычно только разрастаются. А если таким нелепым способом вы хотите защититься от тайпин-ошибок пользователя, то лучше сделайте для данного раздела отдельную страницу ошибки 404 с информативным содержимым. Или улучшите общую для всего сайта страницу ошибки 404.

S
На сайте с 30.09.2016
Offline
469
#35
iccup:
структура урла другая, joomla, и fastcgi. У меня dle и nginx apache как модуль.

Серверу побарабану, джумла там или дле - сервер с движком не работает. А структуру урл Вы можете прописать такую, какая Вам нужна. Смысл того, что Вы привели в качестве примера - страницу 404, отдаваемую движком, сервер редиректит с другим ответом (301 в Вашем примере, но это неверно - правильнее 302 в этом случае).

iccup
На сайте с 01.05.2016
Offline
205
#36
egos:
Автор забыл уточнить, что подобное решение имеет шанс на успех, если ваш движок будет кешировать все действительные страницы в отдельных файлах :)

Я же вам еще на первой странице назвал директивы, в описании которых следует искать решение вашей "проблемы". Слово "проблема" взял в кавычки, потому что проблема надуманная. Вам сразу же два раза было сказано, что в обычных условиях в подобном перенаправлении нет никакой необходимости. Списки на "обложке" сайта обычно только разрастаются. А если таким нелепым способом вы хотите защититься от тайпин-ошибок пользователя, то лучше сделайте для данного раздела отдельную страницу ошибки 404 с информативным содержимым. Или улучшите общую для всего сайта страницу ошибки 404.

я бы забил на это, со временем гугл должен их выкинуть из индекса, дело в том что на страницы пагинации, что сейчас отдают 404, идет траф с поисковика и оч большой процент отказов по известной причине. Самое верное решение было бы перенаправлять их, пусть не прямо туда, но по крайней мере на релевантную страницу.

E
На сайте с 22.06.2016
Offline
45
#37

Если это временное решение, тогда можете поставить заплатку. Только не забудьте потом ее снять ;)

Страница ошибки 404 тоже может быть "релевантной". К тому же ее наличие позволяет быстрее убрать станицу "из поиска". Кроме того, "страницы пагинации" обычно являются "подвижными" в плане содержимого, поэтому поисковик в состоянии самостоятельно настроить фокус на наиболее релевантные.

---------- Добавлено 06.09.2018 в 09:27 ----------

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

---------- Добавлено 06.09.2018 в 09:34 ----------

Лучше бы направляли "траф с поисковика" не на "страницы пагинации", а на какие-то другие или хотя бы только на первую страницу с собственным уникальным содержимым.

-
На сайте с 15.12.2010
Offline
133
#38
iccup:
Что-то эффект тот же что и до. Так же редиректит на /xfsearch/doppole/(.*)/ и существующие страницы и 404-е. Если что я воткнул это сразу вначале server если это имеет значение.

Тогда, вот так:


error_page 404 @missing;

location @missing {
if ($request_uri ~ /(xfsearch/doppole/(.*)/)page){
return 302 $scheme://domain.com/$1;
}
rewrite ^(.*)$ /404.html last;
}
location = /404.html {
internal;
}

Свою 404.html не забудьте положить в корень сайта.

И проверьте, чтобы:

fastcgi_intercept_errors        on; 

Если nginx проксирует, то

proxy_intercept_errors        on;
E
На сайте с 22.06.2016
Offline
45
#39

Кстати, если говорить о временной заплатке для конкретных страниц, то ее можно сделать и исключительно "по location". Но все же автор изначально говорил о другом.

---------- Добавлено 06.09.2018 в 11:45 ----------

-Dima-, там можно указать реакцию в виде перенаправления непосредственно в error_page, насколько помню.

---------- Добавлено 06.09.2018 в 11:51 ----------

А error_page указать для конкретного location.

iccup
На сайте с 01.05.2016
Offline
205
#40

-Dima-, спасибо все работает, скинь в личку кошелек wm скину на пивко денег.

А что касается временно или нет, заплатка или не заплатка. Мое мнение таково, ничего это кардинально не меняет, ибо все прекрасно работает. По мере поступления новых страниц пагинации которые ранее отвечали кодом 404, просто будет контент. Не вижу никаких проблем.

---------- Добавлено 06.09.2018 в 17:45 ----------

egos:

А error_page указать для конкретного location.

можно и для всех, если правильно оформленная страница 404, то почему бы нет?

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