0

好的,我正在寻找使用 mod rewrite 为我的网站编写 seo 友好的 url。它在我的 xampp 本地测试服务器上运行良好。但是,我在尝试将其上线时遇到了问题,它似乎根本不起作用。

这是我在 htaccess 文件中写的内容:

RewriteEngine On
RewriteRule ^category/([a-zA-Z0-9]+)$ category.php?location=$1

所以想法是改成mysite.com/category.php?location=london.mysite.com/category/london

最初我认为在 GoDaddy 端打开 mod rewrite 的能力可能是一个问题,所以我联系了 GoDaddy 看看是否是这种情况,他们的回应是:“Mod_rewrite 是安装在所有服务器上的 Apache Web 服务器模块默认情况下我们的 Linux 服务器;它不必安装或启用。我们的 Linux 主机帐户支持大多数 mod_rewrite 功能。因为启用 mod_rewrite 是在全局级别处理的,所以您不需要在 httpd.conf 文件中启用它。您只需将所需的代码添加到 .htaccess 文件的正文中。”

他们基本上暗示错误不在于他们和我的代码。我对 mod 重写不是很有经验,当我在其他服务器上这样写它时,它似乎工作正常。你有什么特别的东西要和godaddy一起写吗?我错过了什么吗?谢谢!

4

1 回答 1

1

这就是你的 htaccess 文件中的全部内容吗?访问所需的 URL 时遇到什么错误,是 500 内部服务器错误吗?

我通常默认添加的是一个 If 语句:

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteBase /

  RewriteRule ^category/([a-zA-Z0-9_-]+)$ category.php?location=$1 [L]
</IfModule>

顺便说一句,请注意_-规则中字符集末尾的 ,例如纽约有一个 SEF 版本,即new-yorkcategory/new-york将在您的 RewriteRule 中失败。

于 2013-03-29T23:44:23.050 回答