Php htaccess重写规则以重定向到新域
我需要将所有文章从旧域重定向到新域。旧域文章(非wordpress站点)的slug如下:Php htaccess重写规则以重定向到新域,php,apache,.htaccess,mod-rewrite,url-rewriting,Php,Apache,.htaccess,Mod Rewrite,Url Rewriting,我需要将所有文章从旧域重定向到新域。旧域文章(非wordpress站点)的slug如下: www.olddomain.com/CATEGORY_NAME/ID_ARTICLE/ARTICLE_SLUG www.newdomain.com/ARTICLE_SLUG 新的域文章(wordpress站点)类似于: www.olddomain.com/CATEGORY_NAME/ID_ARTICLE/ARTICLE_SLUG www.newdomain.com/ARTICLE_SLUG 因此,我
www.olddomain.com/CATEGORY_NAME/ID_ARTICLE/ARTICLE_SLUG
www.newdomain.com/ARTICLE_SLUG
新的域文章(wordpress站点)类似于:
www.olddomain.com/CATEGORY_NAME/ID_ARTICLE/ARTICLE_SLUG
www.newdomain.com/ARTICLE_SLUG
因此,我需要htaccess规则从旧域重定向到新域,即删除旧域的前两段(CATEGORY_NAME和ID_ARTICLE)
目前,我在htaccess文件中有以下内容:
RewriteRule ^(.*)$ http://www. newdomain .com/$1 [R=301,L]
但它会对所有URL进行重定向 试试这个:
重新编写引擎打开
重写基/
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写cond%{HTTP_HOST}^www\.olddomain\.com
重写规则^(.*)/(.*)/(.*)$http://www.newdomain.com/$3[L,R=301,QSA]
如果文件中还有进一步的重写,请丢失[L]
标志
我和它似乎按照你的意愿工作:
试试这个:
重新编写引擎打开
重写基/
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写cond%{HTTP_HOST}^www\.olddomain\.com
重写规则^(.*)/(.*)/(.*)$http://www.newdomain.com/$3[L,R=301,QSA]
如果文件中还有进一步的重写,请丢失[L]
标志
我和它似乎按照你的意愿工作: