【问题标题】:Bitnami AWS Apache L Flag Not Working on 301's followed by a Blanket RedirectBitnami AWS Apache L 标志不适用于 301,然后是一揽子重定向
【发布时间】:2013-11-11 16:55:43
【问题描述】:

我对在 Amazon AWS 上运行的 bitnami 堆栈上的以下 apache 配置感到有些头疼。

域的以下 htaccess.conf 采用最后一个重写规则并忽略 [L] 标志。我也不能使用重写条件,因为我有太多的例外需要适应。

在我的 Mac OS X Apache 堆栈上进行测试,并且可以正常工作,但由于所有内容都转到最后一个重定向,因此在 live box 上一直死机。我还使用 RewriteCond %{ENV:REDIRECT_STATUS} 测试了变体,但无济于事。

选项 +FollowSymLinks 选项 - 多视图 重写引擎开启

RewriteRule ^about/ http://www.example.co.uk/about/ [R=301,NC,L]
RewriteRule ^blog/ http://www.example.co.uk/blog/ [R=301,NC,L]
RewriteRule ^cookie-policy/ http://www.example.co.uk/c [R=301,NC,L]
RewriteRule ^hello-world/ http://www.example.co.uk/ [R=301,NC,L]
RewriteRule ^landlords-insurance/ http://www.example.co.uk/l/ [R=301,NC,L]
RewriteRule ^liability-insurance/ http://www.example.co.uk/ml/ [R=301,NC,L]
#Followed by another 300 simmilar 301 rules (Condensed for Stack Overflow)
RewriteRule ^(.*)$ http://www.example2.co.uk/page/ [R=301,L]

【问题讨论】:

  • www.example.co.ukwww.example2.co.uk 是同一个服务器吗?
  • 不...因此棘手的部分...我可以放弃并通过 index.php 路由整个事情并进行基于 PHP 的重定向映射,但实际上并不理想。

标签: apache .htaccess mod-rewrite redirect amazon-web-services


【解决方案1】:

尝试在模式的开头添加一个斜线,例如:

RewriteRule ^/about/ http://www.example.co.uk/about/ [R=301,NC,L]
...

编辑:好的,这是我最后一次尝试。尝试用END 标志替换L 标志(根据here 的描述,这似乎是有道理的,但这只是一个有根据的猜测)。

【讨论】:

  • 没什么区别...我真的很困惑地坐在这里。一旦我删除了 RewriteRule ^(.*)$... 规则,这些模式都可以工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-08-28
  • 2013-10-31
  • 2014-08-02
  • 2013-10-02
  • 2010-12-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多