We are happy to announce that Vesta is back under active development as of 25 February 2024. We are working on v1 candidate and expect to engage more with the community over the coming months. We are committed to open source, and we encourage contributors to help us build the future of Vesta.
Смена путей через 301 редирект
-
- Posts: 76
- Joined: Tue Feb 19, 2013 12:40 pm
Смена путей через 301 редирект
Решил оптимизировать старый сайт на Вордпресс, перенес на сервер с Вестой.
УРЛы типа сайт.ру/раздел/статья/, сайт.ру/раздел/подраздел/статья/. Должны стать сайт.ру/статья. Как нужно прописать в htacсses 301 редирект? Или надо делать через правила Nginx?
УРЛы типа сайт.ру/раздел/статья/, сайт.ру/раздел/подраздел/статья/. Должны стать сайт.ру/статья. Как нужно прописать в htacсses 301 редирект? Или надо делать через правила Nginx?
Re: Смена путей через 301 редирект
Эти правила можно добавлять в .htaccess
Code: Select all
Redirect 301 /раздел/статья/ http://сайт.ру/раздел/подраздел/статья/
-
- Posts: 76
- Joined: Tue Feb 19, 2013 12:40 pm
Re: Смена путей через 301 редирект
Помогло
RewriteRule ^category/post/(.*)$ post/$1 [R=301,L]
но только для статей сайт.ру/раздел/статья/.
Для статей с подкатегорий сайт.ру/раздел/подраздел/статья как надо прописать используя регулярные выражения вордпресс?
Статей много, вручную не получится.
RewriteRule ^category/post/(.*)$ post/$1 [R=301,L]
но только для статей сайт.ру/раздел/статья/.
Для статей с подкатегорий сайт.ру/раздел/подраздел/статья как надо прописать используя регулярные выражения вордпресс?
Статей много, вручную не получится.
-
- Posts: 76
- Joined: Tue Feb 19, 2013 12:40 pm
Re: Смена путей через 301 редирект
RewriteRule ^category/subcategory/post/(.*)$ /post/$1 [R=301,L] или
RewriteRule ^category/category/post/(.*)$ /post/$1 [R=301,L]
не работает, то есть с подкатегорий не получается. Может это связанно с правилами Nginx?
RewriteRule ^category/category/post/(.*)$ /post/$1 [R=301,L]
не работает, то есть с подкатегорий не получается. Может это связанно с правилами Nginx?
Re: Смена путей через 301 редирект
Попробуйте добавить заголовок RewriteEngine On, если его нет.
У меня этот редирект сработал без проблем.
Code: Select all
RewriteEngine On
RewriteBase /
RewriteRule ^category/category/post/(.*)$ /post/$1 [R=301,L]
Code: Select all
[root@nxt public_html]# curl -I http://nxt.vestacp.com/category/category/post/test
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Sat, 01 Jun 2013 10:17:57 GMT
Content-Type: text/html; charset=iso-8859-1
Connection: keep-alive
Keep-Alive: timeout=60
Location: http://nxt.vestacp.com/post/test
-
- Posts: 76
- Joined: Tue Feb 19, 2013 12:40 pm
Re: Смена путей через 301 редирект
RewriteRule ^category/category/post/(.*)$ /post/$1 [R=301,L] редиректит некоторые подразделы, некоторые нет. Как такое может быть?
Кеш прочишен (удалены все плагины кеша)
файл .htaccses
****************************************************************************************************************************
<Files .htaccess,.svn>
order allow,deny
deny from all
</Files>
Options +FollowSymlinks
<IfModule mod_rewrite.c>
</IfModule>
# End of Redirection
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^category/category/post/(.*)$ /post/$1 [R=301,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Кеш прочишен (удалены все плагины кеша)
файл .htaccses
****************************************************************************************************************************
<Files .htaccess,.svn>
order allow,deny
deny from all
</Files>
Options +FollowSymlinks
<IfModule mod_rewrite.c>
</IfModule>
# End of Redirection
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^category/category/post/(.*)$ /post/$1 [R=301,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress