Vesta Control Panel - Forum

Community Forum

Skip to content

Advanced search
  • Quick links
    • Main site
    • Github repo
    • Google Search
  • FAQ
  • Login
  • Register
  • Board index Main Section Web Server
  • Search

Смена путей через 301 редирект

Questions regarding the Web Server
Apache + Nginx, Nginx + PHP5-FPM
Post Reply
  • Print view
Advanced search
6 posts • Page 1 of 1
Abraham777
Posts: 76
Joined: Tue Feb 19, 2013 12:40 pm

Смена путей через 301 редирект
  • Quote

Post by Abraham777 » Thu May 30, 2013 8:30 am

Решил оптимизировать старый сайт на Вордпресс, перенес на сервер с Вестой.
УРЛы типа сайт.ру/раздел/статья/, сайт.ру/раздел/подраздел/статья/. Должны стать сайт.ру/статья. Как нужно прописать в htacсses 301 редирект? Или надо делать через правила Nginx?
Top

skid
VestaCP Team
Posts: 1476
Joined: Wed Apr 06, 2011 11:12 pm

Re: Смена путей через 301 редирект
  • Quote

Post by skid » Thu May 30, 2013 11:59 am

Эти правила можно добавлять в .htaccess

Code: Select all

Redirect 301 /раздел/статья/ http://сайт.ру/раздел/подраздел/статья/
Top

Abraham777
Posts: 76
Joined: Tue Feb 19, 2013 12:40 pm

Re: Смена путей через 301 редирект
  • Quote

Post by Abraham777 » Fri May 31, 2013 5:12 am

Помогло
RewriteRule ^category/post/(.*)$ post/$1 [R=301,L]
но только для статей сайт.ру/раздел/статья/.
Для статей с подкатегорий сайт.ру/раздел/подраздел/статья как надо прописать используя регулярные выражения вордпресс?
Статей много, вручную не получится.
Top

Abraham777
Posts: 76
Joined: Tue Feb 19, 2013 12:40 pm

Re: Смена путей через 301 редирект
  • Quote

Post by Abraham777 » Sat Jun 01, 2013 5:39 am

RewriteRule ^category/subcategory/post/(.*)$ /post/$1 [R=301,L] или
RewriteRule ^category/category/post/(.*)$ /post/$1 [R=301,L]

не работает, то есть с подкатегорий не получается. Может это связанно с правилами Nginx?
Top

skid
VestaCP Team
Posts: 1476
Joined: Wed Apr 06, 2011 11:12 pm

Re: Смена путей через 301 редирект
  • Quote

Post by skid » Sat Jun 01, 2013 10:21 am

Попробуйте добавить заголовок 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
Top

Abraham777
Posts: 76
Joined: Tue Feb 19, 2013 12:40 pm

Re: Смена путей через 301 редирект
  • Quote

Post by Abraham777 » Sun Jun 02, 2013 5:16 pm

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
Top


Post Reply
  • Print view

6 posts • Page 1 of 1

Return to “Web Server”



  • Board index
  • All times are UTC
  • Delete all board cookies
  • The team
Powered by phpBB® Forum Software © phpBB Limited
*Original Author: Brad Veryard
*Updated to 3.2 by MannixMD
 

 

Login  •  Register

I forgot my password