Discuz! X3.5 解决小图标不能显示的方法

[复制链接]
116 |14
发表于 7 小时前 | 显示全部楼层 |阅读模式
我发现大多数使用Discuz! X3.5 都有小图标不能显示的问题,提问的时候给的回答都是说跨域的问题,可是不管我怎么百度、谷歌,给出跨域的方法看了都蒙,一大堆的代码都不知要放到哪里!

不过,今天终于让我给解决了,在解决之前看我网站带www和不带www的小图标。





方法是寻求服务商的技术人员,我向他反映了我遇到的问题,然后他给的答复如下。



谷歌翻译的结果。



这是他帮我添加的代码。



然后我试着在浏览器里添加网站地址带www和不带www的,果然图标都能正常显示了。





而且我也在另一个论坛的服务器里做相同的设置,也不再出现小图标不显示的问题,当然,我的能够解决并不代表你们的也一样,所以这个帖只能算是给大家提供参考,如果对你没作用,那就只能说声抱歉了。

下边就是技术人员给出的代码,只需要添加到 .htaccess 文件的最上端,添加后到后台更新下缓存。

  1. Header add Access-Control-Allow-Origin "*"Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type, authorization"Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"
复制代码

或是把"*" 改成你网址的地址
  1. Header add Access-Control-Allow-Origin "https://www.xxx.com"Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type, authorization"Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"
复制代码

最后希望能给同样有小图标烦恼的带来帮助。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

发表于 7 小时前 | 显示全部楼层
1、apache 在httpd.conf 尾部加上
  1. LoadModule headers_module modules/mod_headers.so
复制代码
  1. # Make sure proxies don’t deliver the wrong contentHeader append Vary User-Agent env=!dont-vary      Header set Access-Control-Allow-Origin "*"
复制代码

也可以在网站根目录.htaccess文件中添加以下代码

  1. # Make sure proxies don’t deliver the wrong contentHeader append Vary User-Agent env=!dont-vary      Header set Access-Control-Allow-Origin "*"
复制代码
2、Nginx 在域名.conf 内部加上
(补充:服务器如果安装宝塔,直接点击站点设置-配置文件,搜索'#SSL-START SSL相关配置',在上面粘贴以下代码,刷新后台即可解决此问题)
  1. location ~* \.(eot|ttf|woff|svg|otf|woff2)$ {  add_header Access-Control-Allow-Origin *;}
复制代码
3、如果使用了CDN,需要使用HTTP头


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

发表于 7 小时前 | 显示全部楼层
已解决   删除模板界面基础图片目录



后台-模板-编辑所用模板-界面基础图片目录 {IMGDIR}:
回复

使用道具 举报

发表于 7 小时前 | 显示全部楼层
解决DISCUZ出现https和http引入文件报错static/image/common/dzicon.woff2的一个方案_but requested an insecure font-CSDN博客
看这篇csdn文章,不管你用的是什么环境,或是什么服务器,直接在dz.后台操作,在后台头部文件中加入一段代码即可解决跨域问题即可:<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
回复

使用道具 举报

发表于 7 小时前 | 显示全部楼层
IIS的情况,可能是字体文件未加到MIME类型当中。只需要在IISmime增加相应类型就可以了。
.woff application/x-font-woff
.woff2 application/x-font-woff
回复

使用道具 举报

发表于 7 小时前 | 显示全部楼层
IIS解决办法
在网站根目录web.config里配置
  1.         <httpProtocol>            <customHeaders>                <add name="Access-Control-Allow-Headers" value="origin, x-requested-with, content-type, authorization" />                <add name="Access-Control-Allow-Methods" value="PUT, GET, POST, DELETE, OPTIONS" />                <add name="Access-Control-Allow-Origin" value="*" />            </customHeaders>        </httpProtocol>
复制代码
需要添加到 文件的最上端,添加后到后台更新下缓存和CDN缓存
回复

使用道具 举报

发表于 7 小时前 | 显示全部楼层
还别说,我以前一直也是用的国外主机,不管是更换主机,还是换域名,对于小白,出现问题找他们,真的会直接给你解决。这个映像特深。
记得同期为了解决备案的问题,在阿里,同样的配制,同一个程序备份,硬硬的跟他们客服技术em来EM去的搞了差不多整月,问题依然没解决,他们给我最多的回复就是你配制不够,要升级,你啥问题要解决。气得我最后连下来的备案也不要了,直接把文件全转到国外。

今天看到这个,我一试,还别说,还真是留意尽量的把域名统一成一样的,带www和不带的,还真没用心去把不一样的域名,整成一样的效果。

先留言一个,再测试效果。
回复

使用道具 举报

发表于 7 小时前 | 显示全部楼层
嘿,没看懂这段代码。
看下GPT的回复解释:
这段代码是用来设置HTTP响应头信息,以允许跨域请求。具体来说,它使用Apache的mod_headers模块来添加三个HTTP头信息:

Access-Control-Allow-Origin:指定允许跨域请求的源,*表示允许任意来源的请求。

Access-Control-Allow-Headers:指定允许跨域请求的头信息,包括origin、x-requested-with、content-type和authorization。

Access-Control-Allow-Methods:指定允许跨域请求的HTTP方法,包括PUT、GET、POST、DELETE和OPTIONS。

这些HTTP头信息是由浏览器解析的,用于判断是否允许跨域请求。如果服务器没有设置这些头信息,浏览器会阻止跨域请求,从而导致请求失败。
回复

使用道具 举报

发表于 7 小时前 | 显示全部楼层
我这两个星期两个网站都出现状况,两个都突然不能打开,客服的技术人员了解情况后很快就帮忙解决。
说下我出状况的论坛:
1、第一个网站--技术人员排查后说是我的database没有添加用户,他帮忙添加后就解决了。
2、另一个网站我是发现输入网址后不能打开,但是后面添加/forum.php就没问题,接着我想打开帖子(帖子添加了伪静态),发现又不能打开,我到file manager 看到 .htaccess 文件被修改了,改回来就可以了,可是我的网址不带/forum.php还是不能打开,所以只好找这个服务商的技术人员反映情况,他排查后告诉我index.php被修改和添加了恶意代码,过后把 index.php 替换就好了。
回复

使用道具 举报

发表于 7 小时前 | 显示全部楼层
我刚才试了下,怎么我的不行了。后台使用哪种更新的缓存,哪个就在前台显示正常,另一个就不正常。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表