简单的mod_rewrite不起作用/删除"www."?



我正试图得到一个非常简单的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样板文件的代码片段:

# 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>

所以我猜在我的学习重写规则之前有那个片段是明智的?是否有任何问题,我可以通过使用上面的代码片段与我的自定义重写规则?

你不能在RewriteRule regex中输入完整的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>

相关内容

  • 没有找到相关文章

最新更新