-1

我试图让一个非常简单的 mod_rewrite 规则在我的网站上工作。

到目前为止,我的 .htaccess 文件如下所示:

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On
  RewriteRule ^http://mywebpage.com/study$ http://mywebpage.com/jobs.html [L]
</IfModule>

我想http://mywebpage.com/jobs.htmlhttp://mywebpage.com/study. 我已经确保 .htaccess 文件没有被忽略 - 一切都很好,如果我在文件中输入垃圾,网页就会崩溃。那么为什么这不起作用呢?


另外,我计划使用 HTML5 Boilerplate 中的以下代码段:

# Rewrite "www.example.com -> example.com".

<IfModule mod_rewrite.c>
  RewriteCond %{HTTPS} !=on
  RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
  RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
</IfModule>

所以我想在我的研究重写规则之前有这个片段是明智的吗?将上述代码段与我的自定义重写规则一起使用是否有任何问题?

4

1 回答 1

2

您不能在RewriteRule正则表达式中输入完整的 url,试试这段代码:

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On
  RewriteBase /

  RewriteCond %{HTTPS} !=on
  RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
  RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]

  RewriteRule ^study$ jobs.html [L]
</IfModule>
于 2013-03-27T14:36:03.360 回答