htaccess重写规则影响不可见链接

时间:2017-11-20 10:11:23

标签: apache .htaccess

我有一个基于Joomla的网站,我使用.htaccess将非www,https网址重定向到www,https版本使用以下规则:

RewriteEngine on RewriteCond %{HTTPS} off [OR] RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule (.*) https://www.example.com%{REQUEST_URI} [R=301,L]

每篇文章都有手动添加的facebook评论代码,指向旧的非ssl网址:

<div class="fb-comments" data-href="http://www.example.com/links/main_folder/sub_folder/" data-width="625" data-numposts="5" data-colorscheme="light" data-order-by="reverse_time"></div>

一切都运行良好但是最近我注意到即使是来自Facebooks data-href的链接也开始重定向到https,导致丢失旧评论。

我的问题是我如何修改不影响data-href链接的规则,旧网址结构与新网址结构之间存在差异,旧网址结构与旧网格结构之间存在差异,旧网格结构使用下划线,如果有帮助则使用新连字符。 有没有办法从这条规则中删除带下划线的链接?我怎么会有使用下划线的图片,我也不想重新编写。

1 个答案:

答案 0 :(得分:0)

如果它只是没有下划线,你可以使用:

RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{REQUEST_URI} !_
RewriteRule ^ https://www.example.com%{REQUEST_URI} [R=301,L]