【问题标题】:Apache remove 'www' not workingApache 删除“www”不起作用
【发布时间】:2013-02-26 08:52:06
【问题描述】:

我一直在尝试此处的所有建议以从我的子域中删除“www”,但似乎没有任何效果。

长话短说(或至少更短),我们最近推出了一个网站 womeninleadership.managers.org.uk,但是在一些印刷材料和网址 www.womeninleadership.managers.org 中出现了错误.uk 已在某些材料中发送出去。

我一直在尝试使用以下 RewriteRules 来解决此问题,但完全没有成功:

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



  RewriteCond $1 !^(index\.php|resources|robots\.txt)
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php/$1 [L,QSA]

该网站基于 Codeigniter,这就是为什么我也有第二条规则。

希望这里的人能指出我明显出错的地方,因为这真的是我的疯子,哈哈

提前致谢:)

【问题讨论】:

    标签: apache web rewrite subdomain


    【解决方案1】:

    我一直用这样的东西:

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

    【讨论】:

    • 感谢您的回复,但是我已经尝试过这样的设置,但没有任何运气。由于重写规则似乎是正确的,因此我肯定做错了什么。无论如何,再次感谢。
    • 嗯,你确定你的服务器上启用了 mod_rewrite 吗?
    • 是的,我有几个站点都在同一台服务器上运行(使用虚拟主机),并且根据某些需要启用了 mod_rewrite。只是“www”规则不起作用。第二条规则(在同一个 .htaccess 文件中)没有问题,但第一条规则没有。
    • 嗯,我的答案中的内容直接来自我的服务器,所以我确信它可以工作。
    猜你喜欢
    • 2016-01-07
    • 2015-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-30
    • 2012-05-11
    • 2014-07-24
    相关资源
    最近更新 更多