繁体   English   中英

htaccess SEO友好网址

[英]htaccess SEO friendly url

我到特定网站的网址如下所示:

http://www.mytestingsite123.com/play.php?alias=this-is-an-alias#.U5BPYvl_tNo

但我想要这个网址:

http://www.mytestingsite123.com/this-is-an-alias

要么

http://www.mytestingsite123.com/video/this-is-an-alias

这样对SEO更加友好。 您能帮我吗,我该如何通过修改.htaccess文件来做到这一点。

我具有以下内容的.htaccess文件:

RewriteEngine On

# whole domains
RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]

# subdomains
RewriteCond %{REQUEST_URI} !^subdom/
RewriteCond %{REQUEST_URI} !^/subdom/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)\.([^\.]*)\.([^\.]*)$
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d
RewriteRule (.*) subdom/%2/$1 [DPI]

# aliases (if misssing)
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R]

# subdomains (if misssing)
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R]

您需要像这样附加.htaccess文件:

RewriteRule ^video/([^/]+)?$ play.php?alias=$1 [L]
RewriteRule ^([^/]+)?$ play.php?alias=$1 [L]

第一条规则将与http://www.mytestingsite123.com/video/this-is-an-alias匹配

第二条规则将匹配http://www.mytestingsite123.com/this-is-an-alias

[L]告诉apache停止寻找规则,您可以将其更改为[L,QSA] ,这意味着,如果在新uri的末尾添加额外的参数,则可以正确地传递它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM