【问题标题】:.htaccess problem, need to add string to certain URL's.htaccess 问题,需要在某些 URL 中添加字符串
【发布时间】:2011-05-15 15:42:40
【问题描述】:

在我的无限愚蠢中,我不久前更改了我的 wordpress 博客上的永久链接,现在又更改了它们。我现在造成的问题是我有几百个 URL 不再起作用。

例如,这个 URL 看起来像以前工作的那些

http://www.lazygamer.net/the-evopoints-co-za-downloads-of-the-week-1305/

但是您会看到,这只是给您一个 404 not found 页面,因为我的网站希望第一个 子目录 是一个类别,例如

http://www.lazygamer.net/xbox-360/the-evopoints-co-za-downloads-of-the-week-1305/

所以现在我想在其中添加一个 htaccess 规则来检查一个类别是否存在,如果不存在,那么只需添加一些随机的东西来使 url 解析。

我很确定我可以使用各种正则表达式来做到这一点,但我无法弄清楚。

[更新]我当前的 .htaccess 文件

RewriteEngine On
RewriteBase /
RewriteRule ^/([^/]+)/$ /category/$1/ [R]
RewriteRule ^index\.php$ - [L]
Options +FollowSymLinks
RewriteCond %{HTTP_HOST} ^www.lazygamer\.co.za$ [NC]
RewriteRule ^(.*)$ http://www.lazygamer.net/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^lazygamer\.co.za$ [NC]
RewriteRule ^(.*)$ http://www.lazygamer.net/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^lazygamer\.net$ [NC]
RewriteRule ^(.*)$ http://www.lazygamer.net/$1 [R=301,L]

【问题讨论】:

  • “在我的无限愚蠢中......”,哈哈。

标签: php wordpress .htaccess


【解决方案1】:

阅读 mod_rewrite 以了解如何将这些用于其他问题!

RewriteRule ^/([^/]+)/$   /category/$1/ [R]

应该这样做。

注意,这会将 URL 中具有一个目录路径的任何内容重定向到 /category/{original_url_path}

【讨论】:

  • 这听起来正是我需要的,但我将它添加到我的 .htaccess 中并没有任何改变?我的 htaccess 非常感谢我的缓存插件。它目前已添加到 部分中。对吗?
  • 把它放在你的其他 mod_rewrite 规则的顶部附近,试试这个:RewriteRule ^/([^/]+)/$ /category/$1/ [RL] L 告诉它在这条规则之后停止处理
  • 使用 [RL] 它只会返回 500 个错误,但如果我将其更改为 [R,L] 那么它什么都不做?我的其他 .htaccess 规则正在按预期工作......我已经更新了主帖子以包含我当前的 .htaccess
猜你喜欢
  • 1970-01-01
  • 2019-09-16
  • 2013-12-23
  • 2020-11-30
  • 2013-10-19
  • 1970-01-01
  • 2014-11-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多