【发布时间】:2012-08-05 10:58:15
【问题描述】:
我刚刚花了 2 个小时浏览 Google 和 Stackoverflow 档案,看看能否找到我的问题的答案,而不是一无所获,我发现太多了!所以不幸的是,我不得不添加大量 301 重定向问题。对不起。并感谢您查看这个 ;)
基本上,我有一个希望简化 URL 的博客。目前 URL 如下所示:
http://tempertemper.net/post.php?s=2012-05-30-freeagent
我希望它们看起来像这样:
http://tempertemper.net/2012-05-30-freeagent
我尝试将 RewriteRule /(.*)$ /post.php?s=$1 添加到我的 .htaccess 文件中,但没有。
目前的完整文件如下所示:
<ifModule mod_rewrite.c>
DirectoryIndex index.php index.html
ErrorDocument 404 http://tempertemper.net/error.php
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.tempertemper\.net$
RewriteCond %{REQUEST_URI} !cron.php
RewriteRule ^(.*)$ http://tempertemper.net/$1 [R=301,L]
</ifModule>
我尝试在重定向 www 的规范化位之后添加它。到非 www.:
重写规则 ^([a-zA-Z0-9_-]+)$ post.php?s=$1
它有点工作。然后我可以链接到http://tempertemper.net/2012-05-30-freeagent,但问题是,http://tempertemper.net/post.php?s=2012-05-30-freeagent 仍然存在。这很可能对 seo 不利,因为在搜索引擎看来,我想我会有重复的内容。我尝试将 [R=301] 放在新行的末尾,但它会停止新链接的工作。还尝试将 ,L 放在方括号中并将其从规范化命令中删除,但没有任何乐趣(L 代表最后一个命令,不是吗...?)。
基本上,我毕竟在其中生成或已经生成了 post.php?s= 的所有 URL 都永久重定向到没有 post.php?s= 的 URL,因此进入这些页面的任何链接已经是重定向,以后的任何链接都将直接指向新外观的 URL。
希望这是有道理的……
谢谢,
马丁 :)
【问题讨论】:
标签: .htaccess redirect friendly-url