zoukankan      html  css  js  c++  java
  • Nginx高级配置-官网logo之favicon.ico

               Nginx高级配置-官网logo之favicon.ico

                                              作者:尹正杰

    版权声明:原创作品,谢绝转载!否则将追究法律责任。

    一.浏览器会默认帮咱们访问官网的图标

    1>.浏览器访问网站"http://node101.yinzhengjie.org.cn/"

    2>.使用curl命令访问

    [root@node108.yinzhengjie.org.cn ~]# curl http://node101.yinzhengjie.org.cn/
    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>字体的样式</title>
            <style>
                .hello{
                    color: red;
                    font-size: 30px;
                    font-family: "curlz mt","华文彩云","arial", "微软雅黑";
                }
            </style>
        </head>
        <body>
            <p class="hello">2019尹正杰到此一游,在这里提前祝大家2020年新年快乐~</p>
        </body>
    </html>
    
    [root@node108.yinzhengjie.org.cn ~]# 

    3>.可以看到后台是有日志输出的

    [root@node101.yinzhengjie.org.cn ~]# > /yinzhengjie/softwares/nginx/logs/access_json.log             #在访问之前,建议大家把日志清空,看的比较明显哈~当然,我说的是测试环境。
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# tail  -10f /yinzhengjie/softwares/nginx/logs/access_json.log        #可以看到浏览器的访问记录被记录了404错误信息,而使用命令行curl访问的确是200正常访问。
    {"@timestamp":"2019-12-22T11:10:40+08:00","host":"172.30.1.101","clientip":"172.30.1.254","size":571,"responsetime":0.000,"upstreamtime":"-","upstreamhost":"-","http_host":
    "node101.yinzhengjie.org.cn","uri":"/favicon.ico","domain":"node101.yinzhengjie.org.cn","xff":"-","referer":"http://node101.yinzhengjie.org.cn/","tcp_xff":"",
    "http_user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36","status":"404"}
    {"@timestamp":"2019-12-22T11:47:35+08:00","host":"172.30.1.101","clientip":"172.30.1.101","size":362,"responsetime":0.000,"upstreamtime":"-","upstreamhost":"-","http_host": "node101.yinzhengjie.org.cn","uri":"/index.html","domain":"node101.yinzhengjie.org.cn","xff":"-","referer":"-","tcp_xff":"","http_user_agent":"curl/7.29.0","status":"200"}

    3>.访问虚拟主机"http://www.yinzhengjie.org.cn/",发现也出现类似的问题

    4>.访问虚拟主机"http://mobile.yinzhengjie.org.cn/",发现也出现类似的问题

    5>.访问"favicon.ico"依旧会出现问题

      favicon.ico文件是浏览器收藏网址时显示的图标,当客户端使用浏览器问页面时,浏览器会自己主动发起请求获取页面的favicon.ico文件,但是当浏览器请求的favicon.ico文件不存在时,服务器会记录404日志,而且浏览器也会显示404报错。

    二.关于favicon.ico的解决办法

      既然知道favicon.ico是啥了,那就好办了,找一个公司logo放上去就ok啦。

    1>.从互联网上下载一个logo咱们自己来用于模拟试验

    [root@node101.yinzhengjie.org.cn ~]# ll
    total 0
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# wget https://www.jd.com/favicon.ico
    --2019-12-22 12:05:35--  https://www.jd.com/favicon.ico
    Resolving www.jd.com (www.jd.com)... 220.194.105.131, 2408:8710:20:1140:8000::3
    Connecting to www.jd.com (www.jd.com)|220.194.105.131|:443... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 25214 (25K) [image/x-icon]
    Saving to: ‘favicon.ico’
    
    100%[==================================================================================================================================>] 25,214      --.-K/s   in 0.002s  
    
    2019-12-22 12:05:35 (10.0 MB/s) - ‘favicon.ico’ saved [25214/25214]
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ll
    total 28
    -rw-r--r-- 1 root root 25214 Mar 25  2016 favicon.ico
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# wget https://www.jd.com/favicon.ico                          #下载京东的logo
    [root@node101.yinzhengjie.org.cn ~]# ll
    total 28
    -rw-r--r-- 1 root root 25214 Mar 25  2016 favicon.ico
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# wget https://img.alicdn.com/tps/i3/T1OjaVFl4dXXa.JOZB-114-114.png
    --2019-12-22 12:07:01--  https://img.alicdn.com/tps/i3/T1OjaVFl4dXXa.JOZB-114-114.png
    Resolving img.alicdn.com (img.alicdn.com)... 111.206.4.120, 111.206.4.115
    Connecting to img.alicdn.com (img.alicdn.com)|111.206.4.120|:443... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 4540 (4.4K) [image/png]
    Saving to: ‘T1OjaVFl4dXXa.JOZB-114-114.png’
    
    100%[==================================================================================================================================>] 4,540       --.-K/s   in 0s      
    
    2019-12-22 12:07:01 (1.07 GB/s) - ‘T1OjaVFl4dXXa.JOZB-114-114.png’ saved [4540/4540]
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ll
    total 36
    -rw-r--r-- 1 root root 25214 Mar 25  2016 favicon.ico
    -rw-r--r-- 1 root root  4540 May 29  2017 T1OjaVFl4dXXa.JOZB-114-114.png
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# wget https://img.alicdn.com/tps/i3/T1OjaVFl4dXXa.JOZB-114-114.png        #下载淘宝的logo

    2>.编辑子配置文件

    [root@node101.yinzhengjie.org.cn ~]# cat /yinzhengjie/softwares/nginx/conf.d/https.conf               #我们把京东的logo放在虚拟主机为"www.yinzhengjie.org.cn"中
    server {
        listen 80;
        listen 443 ssl;
        server_name www.yinzhengjie.org.cn;
       
        location / {
           root /yinzhengjie/data/web/nginx/static;
           index index.html;
        }
    
        location = /favicon.ico {
           root /yinzhengjie/data/web/nginx/images/jd;
        }
    }
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# nginx -t
    nginx: the configuration file /yinzhengjie/softwares/nginx/conf/nginx.conf syntax is ok
    nginx: configuration file /yinzhengjie/softwares/nginx/conf/nginx.conf test is successful
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# cat /yinzhengjie/softwares/nginx/conf.d/mobile.conf               #我们将淘宝下载的logo放在虚拟主机为"mobile.yinzhengjie.org.cn"中
    server {
        listen 80;
        listen 443 ssl;
        server_name mobile.yinzhengjie.org.cn;
    
        ssl_certificate /yinzhengjie/softwares/nginx/certs/mobile.yinzhengjie.org.cn.crt;
        ssl_certificate_key /yinzhengjie/softwares/nginx/certs/mobile.yinzhengjie.org.cn.key;
        ssl_session_cache shared:sslcache:20m;
        ssl_session_timeout 10m;   
    
        location / {
           root /yinzhengjie/data/web/nginx/mobile;
           index index.html;
        }
    
        location /favicon.ico {
           root /yinzhengjie/data/web/nginx/images/taobao;
        }
    }
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# nginx -t
    nginx: the configuration file /yinzhengjie/softwares/nginx/conf/nginx.conf syntax is ok
    nginx: configuration file /yinzhengjie/softwares/nginx/conf/nginx.conf test is successful
    [root@node101.yinzhengjie.org.cn ~]#

    3>.将下载的图片放在指定路径中

    [root@node101.yinzhengjie.org.cn ~]# mkdir -pv /yinzhengjie/data/web/nginx/images/{jd,taobao{
    mkdir: created directory ‘/yinzhengjie/data/web/nginx/images’
    mkdir: created directory ‘/yinzhengjie/data/web/nginx/images/jd’
    mkdir: created directory ‘/yinzhengjie/data/web/nginx/images/taobao’
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ll
    total 36
    -rw-r--r-- 1 root root 25214 Mar 25  2016 favicon.ico
    -rw-r--r-- 1 root root  4540 May 29  2017 T1OjaVFl4dXXa.JOZB-114-114.png
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# mv favicon.ico /yinzhengjie/data/web/nginx/images/jd/
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# mv T1OjaVFl4dXXa.JOZB-114-114.png /yinzhengjie/data/web/nginx/images/taobao/favicon.ico
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ll
    total 0
    [root@node101.yinzhengjie.org.cn ~]#
    [root@node101.yinzhengjie.org.cn ~]# ll /yinzhengjie/data/web/nginx/images/ -R
    /yinzhengjie/data/web/nginx/images/:
    total 0
    drwxr-xr-x 2 root root 25 Dec 22 12:46 jd
    drwxr-xr-x 2 root root 25 Dec 22 12:47 taobao
    
    /yinzhengjie/data/web/nginx/images/jd:
    total 28
    -rw-r--r-- 1 root root 25214 Mar 25  2016 favicon.ico
    
    /yinzhengjie/data/web/nginx/images/taobao:
    total 8
    -rw-r--r-- 1 root root 4540 May 29  2017 favicon.ico
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 

    4>.重新加载nginx的配置文件

    [root@node101.yinzhengjie.org.cn ~]# netstat -untalp | grep nginx
    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      12283/nginx: master 
    tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      12283/nginx: master 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ps -ef | grep nginx | grep -v grep
    root     12283     1  0 12:30 ?        00:00:00 nginx: master process nginx
    nginx    12284 12283  0 12:30 ?        00:00:00 nginx: worker process
    nginx    12285 12283  0 12:30 ?        00:00:00 nginx: worker process
    nginx    12286 12283  0 12:30 ?        00:00:00 nginx: worker process
    nginx    12287 12283  0 12:30 ?        00:00:00 nginx: worker process
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# nginx -s reload
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ps -ef | grep nginx | grep -v grep
    root     12283     1  0 12:30 ?        00:00:00 nginx: master process nginx
    nginx    12406 12283  6 12:52 ?        00:00:00 nginx: worker process
    nginx    12407 12283  5 12:52 ?        00:00:00 nginx: worker process
    nginx    12408 12283  5 12:52 ?        00:00:00 nginx: worker process
    nginx    12409 12283  5 12:52 ?        00:00:00 nginx: worker process
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# netstat -untalp | grep nginx
    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      12283/nginx: master 
    tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      12283/nginx: master 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 

    5>.访问虚拟主机"http://www.yinzhengjie.org.cn/",发现logo可以正常显示啦

    6>.访问虚拟主机"http://mobile.yinzhengjie.org.cn/",发现logo是可以正常显示啦

  • 相关阅读:
    使用curl命令操作elasticsearch
    Elasticsearch + logstash + kibana 配置
    Solr6.2.0 + zookeeper 集群配置
    Elasticsearch + logstash中文指南
    ELK+kafka构建日志收集系统
    基于docker+etcd+confd + haproxy构建高可用、自发现的web服务
    mongodb配置
    Docker的私有仓库
    GitLab + Jenkins + Docker + Kubernetes。
    ansible 安装使用
  • 原文地址:https://www.cnblogs.com/yinzhengjie/p/12057298.html
Copyright © 2011-2022 走看看