伪静态网站分享到微信链接打不开报404错误的解决办法

悟途网 2015年08月17日 20:54 阅读()
字号 (A- A+)

最近有好友反映用百度一键分享,分享网页链接到微信朋友圈的时候,发现链接无法打开,提示无法找到该页404错误,同样分享到QQ、微博等链接能正常访问,这么明显的错误,百度和腾讯应该不会忽略吧。

伪静态网站分享到微信链接打不开报404错误的解决办法

分析了一遍网站,确实是微信朋友圈无法分享网站链接。但是通过微信扫一扫能正常浏览网页,点击分享到朋友圈后,在从朋友圈去访问的时候,提示无法找到该页,报404错误。

经反复检测,排除了分享代码的问题,和服务器配置问题。我开始怀疑伪静态规则,开启URL重写造成的,我关掉了伪静态,让网页形成动态链接, 微信朋友圈分享正常显示,无报错。最后发现问题所在了,我们来对比下分享的网址:

分享到QQ空间:

http://www.xxx.com/article/20150817000515.html#0-qzone-1-1476-d020d2d2ad1440

分享给QQ好友:

http://www.xxx.com/article/20150817000515.html#0-sqq-1-7608-9737f6f9e09dfabfee85

分享到微信朋友圈:

http://www.xxx.com/article/20150817000515.html?from=timeline&isappinstalled=0

这样一对比问题就明显了,伪静态规则问题,前面能正常访问的地址后面都是#开始加其他代码的,微信是“ ? ”开始加其他代码的,试着把“ ? ”改成“ # ”能正常访问链接。

知道问题所在就好办了,修改伪静态规则,在伪静态规则里面加上 (.*) 就可以了,也就是 在静态网址结束后 html 后面加上(.*) 即可。

例如规则变动如下:

RewriteRule ^article/(.+).html(.*)  article.php?name=$1 [L]

RewriteRule ^product/(.+).html(.*)  product.php?name=$1 [L]

RewriteRule /([0-9]+)\.html(.*)  /Contents\.php\?w=$1 [I]

至此问题解决!

热门文章
随机推荐
华为手机超级实用的五招省电技巧

华为手机超级实用的五招省

随着华为手机越来越智能,安装的应用越来越多,在国...

三星A5 2016版指纹识别怎么设置的方法

三星A5 2016版指纹识别怎么设

今年支持指纹识别功能的智能手机特别多,一些中低端...

手机QQ聊天记录漫游设置方法

手机QQ聊天记录漫游设置方

手机QQ聊天记录漫游怎么设置?手机QQ的聊天记录漫游这...

三星S6怎么用第三方recovery解锁刷机

三星S6怎么用第三方recover

三星S6怎么解锁?默认情况下手机是锁定的,如需要刷...

OPPO A53怎么截屏的3种方法

OPPO A53怎么截屏的3种方法

OPPO A53是前不久,OPPO正式上市的一款中端主流手机,如...

微信电话怎么打电话与收费标准

微信电话怎么打电话与收费

近日有网友曝光,微信新增了一个微信电话功能,借助...

如何鉴别港版原封iPhone6s/6s Plus的鉴别教程

如何鉴别港版原封iPhone6s/

苹果新一代iPhone 6s/6s Plus发布至今已经有两个多月了,...

MIUI 7与MIUI 6有哪些明显变化?

MIUI 7与MIUI 6有哪些明显变化

MIUI 7的设计原则是“拒绝单调,为你设计”,全面发力...