WEB服务与NGINX(16)-网站logo之favicon.ico文件
1. 网站logo之favicon.ico文件
1.1 favicon.ico文件的作用
favicon.ico文件是浏览器记录的网站的图标,当客户端使用浏览器访问页面时,浏览器会自己主动发起请求获取页面的favicon.ico文件(浏览器缓存过此页面的不会再次请求),例如百度的favicon.ico文件图标如下:

下面我们来制作一个自己的网站图标,借用一下百度的图标。
#1.下载baidu的网站图标
[root@nginx01 ~]# wget https://www.baidu.com/favicon.ico
#2.修改nginx的配置文件
[root@nginx01 ~]# vim /etc/nginx/conf.d/virtualhost.conf
server {
listen 80;
server_name www.nginx01.com;
charset utf-8,gbk;
access_log /var/log/nginx/access_nginx01.log access_json;
location / {
root /data/nginx/html/web1;
index index.html;
}
location = /favicon.ico {
root /data/nginx/html/web1/image;
}
}
#3.将favicon.ico文件
[root@nginx01 ~]# ll /data/nginx/html/web1/image/favicon.ico
-rw-r--r-- 1 root root 16958 Mar 10 10:33 /data/nginx/html/web1/image/favicon.ico
浏览器测试访问,发现已经存在图标了。

1.2 favicon.ico文件带来的问题
当服务器上对用的站点不存在favicon.ico文件时,当客户端进行访问时会在服务器上生成一条favicon.ico 404的报错日志,而且在浏览器上也会有响应的报错。
客户端的报错如下:

服务器上产生的错误日志如下:
[root@nginx01 ~]# tail /var/log/nginx/access_nginx02.log
{ "@timestamp": "2021-06-19T23:00:23+08:00", "remote_addr": "192.168.20.1", "referer": "-", "request": "GET / HTTP/1.1", "status": 200, "bytes":16, "agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0", "x_forwarded": "-", "upstr_addr": "-","upstr_host": "-","upstreamtime": "-" }
{ "@timestamp": "2021-06-19T23:00:24+08:00", "remote_addr": "192.168.20.1", "referer": "http://www.nginx02.com/", "request": "GET /favicon.ico HTTP/1.1", "status": 404, "bytes":146, "agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0", "x_forwarded": "-", "upstr_addr": "-","upstr_host": "-","upstreamtime": "-" }
为了避免上述404报错的产生,解决方法有两种:
#方法一:服务器不记录相关的访问日志
location = /favicon.ico {
access_log off;
}
#方法二:制作图标,并将图标放置在响应的位置,如上例。
location = /favicon.ico {
root /data/nginx/html/web1/image;
}
WEB服务与NGINX(16)-网站logo之favicon.ico文件的更多相关文章
- PHP获取网站图标(favicon.ico)文件
有的网站源码中加入了这几行代码: <link rel="shortcut icon" href="/favicon.ico" type="ima ...
- nginx作为web服务以及nginx.conf详解
Nginx系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 1.nginx简介 nginx是一个优秀的web服务程序.反向代理程序.它采用非 ...
- Web服务器之Nginx详解(操作部分)
大纲 一.前言 二.Nginx 安装与配置 三.Nginx 配置文件详解 四.Nginx 命令参数 五.配置Nginx提供Web服务 六.配置Nginx的虚拟主机 七.配置Nginx的用户认证 八.配 ...
- Web服务器之Nginx详解(理论部分)
大纲 一.前言 二.Web服务器提供服务的方式 三.多进程.多线程.异步模式的对比 四.Web 服务请求过程 五.Linux I/O 模型 六.Linux I/O 模型具体说明 七.Linux I/O ...
- 【转】Web服务器之Nginx详解(理论部分)
大纲 一.前言 二.Web服务器提供服务的方式 三.多进程.多线程.异步模式的对比 四.Web 服务请求过程 五.Linux I/O 模型 六.Linux I/O 模型具体说明 七.Linux I/O ...
- Linux系统WEB服务之Nginx基础入门
一.Nginxi简介 Nginx是什么?它是一个开源.高性能的WEB服务器软件和代理服务器软件,由俄罗斯人Igor Sysoev 开发实现.它的功能主要分三类,第一是它作为一个WEB服务软件使用:第二 ...
- web服务器之nginx与apache
最近准备架设php的web服务器,以下内容可供参考. 1.nginx相对于apache的优点: 轻量级,同样起web 服务,比apache占用更少的内存及资源 抗并发,nginx 处理请求是异步非阻塞 ...
- web服务器之nginx和apache的区别
① apache属于重量级的服务器,nginx属于轻量级的服务器; 区别在于对一些功能的支持,比如: pathinfo,php模块方面 ② nginx抗高并发能力强. 由于nginx采用的是异步非阻 ...
- web服务之nginx部署
本期内容概要 了解web服务 Nginx和Apache的对比 部署Nginx 内容详细 1.什么是web服务 Web服务是一种服务导向架构的技术,通过标准的Web协议提供服务,目的是保证不同平台的应用 ...
- WEB 服务应用 Nginx之安装篇
一.Nginx 源码包安装与配置 1.环境准备 操作系统.内核版本: CentOS 6.8 2.6.32-642.el6.x86_64 Nginx 软件版本: nginx-1.10.2 2.创建Ng ...
随机推荐
- 【Learning eBPF-1】什么是 eBPF?为什么它很吊?
本书中, eBPF 被称为一种 革命性的 内核技术,被广泛应用于网络.观测 和 安全工具中. 这种技术允许你在不重新编译内核的情况下,使能你的自定义工具,与内核数据进行交互.听起来很厉害. 1.1 追 ...
- 福州大学MEM 备考总结
自己的基本情况 2022年8月2日,当天觉得休息的差不多了,思来想去,觉得考研是个不错的选择,和女朋友聊了一下,得到她的支持,于是乎定下目标.接着就是开始在网络上查找相关的材料,先把要报考高校和专业的 ...
- 在idea/webstorm等terminal运行命令报错:Command rejected by the operating system没有权限【已解决】
在idea/webstorm等编译器terminal窗口运行命令报错:Command rejected by the operating system没有权限[已解决] 1.修改terminal窗口 ...
- #树链剖分,LCA#洛谷 3398 仓鼠找sugar
题目 多次询问求树上的两条路径是否有公共点 分析 有公共点当且仅当一条路径的LCA在另一条路径上, 否则一定会形成一个环,那树剖求LCA判断一下LCA是否在另一条路径上即可 代码 #include & ...
- Promise + Async&Await + Array.reduce + 函数递归 解决网络/接口请求的依次/排队不间断间隔访问
背景 试想在一个需要频繁更新数据的场景(例如:监控.图表类),常规方法是设置一个间隔 N 秒的定时器 setInterval:但是这种方式存在一个问题,当前一个请求时间过长时(超过了间隔时间),后一个 ...
- jemter做参数化的几种方法
第一种:使用用户参数:添加--前置处理器--用户参数
- 第十篇:异步IO、消息队列
一.协程 二.异步IO_Gevent 三.协程异步IO操作 四.事件驱动模型 五.IO多路复用 六.异步IO理论 一.回顾 线程 vs 进程 线程:CPU最小调度单位,内存共享: 线程同时修改同一份数 ...
- Blocks—单调栈
思路: 题目意思是求平均数>=k的最长序列先求出a[i]-k的前缀和就是求sum[i]-sum[j]>=0的最大i-j当j<=k<=isum[j]<=sum[k]j< ...
- Maven 三种archetype说明合集【转载】
Maven 三种archetype说明 新建Maven project项目时,需要选择archetype. 那么,什么是archetype? archetype的意思就是模板原型的意思,原型是一个Ma ...
- Docker compose 部署 nginx+php
Docker compose 部署 nginx+php 拉取Docker镜像 docker pull nginx:1.21.6 docker pull php:7.4.28-fpm 创建docker- ...