深度优化Apache
关于Apache的优化分为以下几个步骤:
- Apache的Gzip(deflate)功能;
- Apache的缓存设置;
- Apache禁止目录遍历;
- Apache隐藏版本目录;
- Apache日志分割;
- Apache配置防盗链;
一、Apache的gzip(deflate)功能
gzip可以极大的加速网站,使用gzip功能有时压缩比率高到80%以上,最少都有40%以上,所以说gzip功能是非常强大的,还是不错的。
在Apache2之后的版本,模块名不叫gzip,而叫mod_deflate
未使用gzip时,网页中传输文件的过程,如图:
使用gzip时,网页中传输文件的过程,如图:
本次博文案例环境,可以参考博文:Apache的安装部署及工作模式详解
如果要使用gzip(deflate)的功能,一定要打开两个模块:
LoadModule deflate_module modules/mod_deflate.so
//模块的作用:对传输到客户端的代码进行gzip压缩
LoadModule headers_module modules/mod_headers.so
//模块的作用:告诉客户端的浏览器,传输的文件使用了gzip压缩。如果不开启的话,则无法正常显示网页内容
[root@localhost ~]# apachectl -M | grep deflate
//检查mod_deflate模块是否安装,如果没有任何返回信息则表示没有安装
安装方法有两种:
- 编译时添加“--enable-deflate”选项即可安装;
- 使用DSO方式进行安装;
本身Apache已经安装完成,所以这里就是用DSO方式进行安装了
[root@localhost ~]# cd /usr/src/httpd-2.4.23/modules/filters/
//切换到Apache源码包mod_deflate所在的目录下
[root@localhost filters]# /usr/local/http-2.4.23/bin/apxs -c -i -a mod_deflate.c
//使用apxs命令进行安装
apxs命令参数的解释:
- -i:表示需要执行安装操作,以安装一个或多个动态共享对象到服务器的modules目录中;
- -a:表示会自动增加一个 LoadModule 行到 httpd.conf 文件中,以启用此模块,或者,如果 此行已经存在,则启用之;
- -c:表示需要执行编译操作。
在安装过程中会出现这样的错误信息,如图:
这样的错误信息即表示缺少zlib-devel的安装包,使用“yum -y install zlib-devel”即可,再次重新安装mod_deflate模块!
[root@localhost filters]# ll /usr/local/http-2.4.23/modules/mod_deflate.so
-rwxr-xr-x. 1 root root 98160 11月 22 18:53 /usr/local/http-2.4.23/modules/mod_deflate.so
//确认文件已经存在
检查Apache主配置文件出现以下情况:
[root@localhost ~]# apachectl -t
httpd: Syntax error on line 104 of /usr/local/http-2.4.23/conf/httpd.conf: Cannot load modules/mod_deflate.so into server: /usr/local/http-2.4.23/modules/mod_deflate.so: undefined symbol: inflate
解决方法:
需要在Apache主配置文件的 LoadModule deflate_module modules/mod_deflate.so 这行的上一行添加LoadFile /usr/local/zlib/lib/libz.so
即可,如图:
[root@localhost ~]# apachectl -t
Syntax OK //检查其配置文件没有错误
[root@localhost ~]# apachectl restart
//重新启动Apache服务
接下来修改Apache主配置文件,使其开启gzip压缩传输功能:
LoadModule deflate_module modules/mod_deflate.so
//这个模块的作用:对传输到客户端的代码进行gzip压缩
LoadModule headers_module modules/mod_headers.so
//这个模块的作用:告诉客户端的浏览器,传输的文件使用了gzip压缩。如果不开启的话,则无法正常显示网页内容
//查看Apache主配置文件必须保证这两个模块已经被启用
在Apache主配置文件中(个人建议在末尾)添加如下内容:
<IfModule mod_deflate.c> //表示需要启用mod_deflate模块
DeflateCompressionLevel 9 //压缩程度的等级
SetOutputFilter DEFLATE //设置输出过滤器,对输出启用压缩功能
AddOutputFilterByType DEFLATE text/* //设置对文件是文本格式的进行压缩
SetEnvIfNoCase Reques t_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
//设置不对后缀为 gif,jpg,jpeg,png 的图片文件进行压缩。?:表示不会捕获 ( )里内容了
</IfModule>//以下内容是设置日志输出
DeflateFilterNote Input input_info //声明输入流的 byte 数量
DeflateFilterNote Output output_info //声明输出流的 byte 数量
DeflateFilterNote Ratio ratio_info //声明压缩的百分比
LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate //声明日志格式
CustomLog logs/deflate_log.log deflate //指定日志的存放路径
考虑到粘贴复制的问题,这里附上Apache文件中添加的内容(不带注释)
<IfModule mod_deflate.c>
DeflateCompressionLevel 9
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/*
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
</IfModule>DeflateFilterNote Input input_info
DeflateFilterNote Output output_info
DeflateFilterNote Ratio ratio_info
LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate
CustomLog logs/deflate_log.log deflate
修改完成之后,重新启用Apache服务,并使用浏览器进行测试(使用F12开启开发者模式,并使用F5进行刷新),如图:
[root@localhost ~]# cat /usr/local/http-2.4.23/logs/deflate_log.log
//查看deflate的日志(日志路径在配置文件中已经定义)
"GET / HTTP/1.1" -/- (-%)
"GET /favicon.ico HTTP/1.1" -/- (-%)
"GET / HTTP/1.1" -/- (-%)
"GET / HTTP/1.1" 76/4725 (1%)
"GET / HTTP/1.1" 76/4725 (1%) //可以看出压缩比例达到了99%
"-" -/- (-%)
注意:图片是不需要被压缩的,flash的swf文件也是不用压缩的(这两个东西压缩之后会出现意想不到的效果)
二、Apache的缓存设置
Apache的缓存设置主要依赖于 mod_expires 模块 ,启用模块后,可以减少20%~30%左右的重复请求,让重复的用户请求结果都缓存在本地。注意更新快的文件不要这么做。
mod_expires模块控制服务器应答时的 Expires 头内容和 Cache-Control 头的 max-age 指令。有效期 (expiration date)可以设置为相对于源文件的最后修改时刻或者客户端的访问时刻。
未启用 mod_expires模块expire缓存的效果:
启用mod_expires模块expire缓存,方法如下:
LoadModule expires_module modules/mod_expires.so
//查看Apache的主配置文件,必要要保证这个模块被启用
然后在Apache主配置文件末尾添加以下内容:
<IfModule mod_expires.c> //表示启用expires模块
ExpiresActive On //启用expires功能
ExpiresByType text/html "access plus 2 minute"
//设置后缀为html的文本文件保存时间为两分钟
ExpiresByType image/jpeg "access plus 1 mouth"
//设置后缀为jpeg的图片信息保存时间为一个月
ExpiresDefault "now plus 0 minute"
//其他默认没有被定义的不进行缓存
</IfModule>
不带注释的配置文件:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType text/html "access plus 2 minute"
ExpiresByType image/jpeg "access plus 1 mouth"
ExpiresDefault "now plus 0 minute"
</IfModule>
测试效果如下:
缓存机制的配置格式:
ExpiresByType type/encoding "<base> [plus] {<num><type>}"
ExpiresDefault "<base> [plus] {<num><type>}"
1、其中<base>是下列之一:
access(相对于客户端访问的时间)
now(相当于access)
modification(相对于最后一次修改源文件后的缓存时间)
2、该plus关键字是可选的。num 应该是整数值,并且type是以下之一:
years
months
weeks
days
hours
minutes
seconds
也可以使用以下格式来定义缓存机制:
ExpiresByType image/jpeg A2592000 //表示图片的缓存是1个月
ExpiresByType text/html M604800 //表示HTML文档的有效期是最后修改时刻后的一星期
//"M"表示源文件的最后修改时刻,"A"表示客户端对源文件的访问时刻。后面的时间则以秒计 算。
具体介绍可以参考官方文档
三、Apache禁止目录遍历
访问Apache时,默认访问的时Apache网页根目录下的index.html,如何这个文件不存在的话,就会出现以下情况:
为了防止出现以上情况需要修改Apache的配置文件:
重新启动服务之后,就会出现这种情况:
四、Apache隐藏版本目录
不进行修改,默认的版本信息:
这样轻易的出现在互联网上,显然是不安全的。可以通过以下操作进行优化处理,方法如下:
在Apache主配置文件中启用 httpd-default.conf
Include conf/extra/httpd-default.conf
//去除之前的#号
[root@localhost ~]# vim /usr/local/http-2.4.23/conf/extra/httpd-default.conf
//找到
ServerTokens Full
ServerSignature On
//修改为以下内容
ServerTokens Prod
ServerSignature Off
重新启动服务之后,再次进行查看:
如果需要彻底的改变版本之类的信息,那么需要在编译之前,修改源码包下 include 目录下的 ap_release.h 。
[root@localhost ~]# vim /usr/src/httpd-2.4.23/include/ap_release.h
//这是本人的解压路径,各位根据实际情况
//修改的内容如下:
#define AP_SERVER_BASEVENDOR "Apache Software Foundation" //服务的供应商名称
#define AP_SERVER_BASEPROJECT "Apache HTTP Server" //服务的项目名称
#define AP_SERVER_BASEPRODUCT "Apache" //服务的产品名
#define AP_SERVER_MAJORVERSION_NUMBER 2 //主要版本号
#define AP_SERVER_MINORVERSION_NUMBER 4 //小版本号
#define AP_SERVER_PATCHLEVEL_NUMBER 23 //补丁级别
#define AP_SERVER_DEVBUILD_BOOLEAN 0
//上述行无需将行首的“#”号删除
根据注释修改成自己想要的,编译安装即可!
五、Apache日志分割
随着网站的访问量越来越大,产生的日志文件也就会越来越大,如果不对日志进行分隔处理,日志文件会越存越大,不易备份,而且只能一次性将Apache的日志全部删除,这样就会丢失很多对网站宝贵的信息,因此管理好这些海量的日志对网站来说十分重要。
对日志进行分隔处理可以通过以下两种方法:
方法 1:使用 rotatelogs(apache 自带的工具)每隔一天记录一个日志
修改Apache的主配置文件,更改内容如下:
//找到以下两行,进行注释:
ErrorLog logs/error_log
CustomLog logs/access_log common
//然后最好在CustomLog "logs/access_log" common配置的下一行添加如下内容(以下内容不可以直接复制,请看下面的解释):
ErrorLog "|/usr/local/http-2.4.23/bin/rotatelogs -l logs/error_%Y-%m-%d.log 86400"
CustomLog "|/usr/local/http-2.4.23/bin/rotatelogs -l logs/access_%Y-%m-%d.log 86400" combined
//这里是要填写rotatelogs工具的绝对路径
在上面添加的内容中,86400为轮转的时间,单位是秒(也就是一天生成一个日志文件)。
[root@localhost ~]# systemctl restart httpd
//重启Apache服务
[root@localhost ~]# ls /usr/local/http-2.4.23/logs/
access_2019-11-23.log access_log error_2019-11-23.log error_log httpd.pid
//查看日志文件,第一次可能只会出现错误日志,访问一下,访问日志即可产生
这样就已经实现了日志按天进行分割存放!
由于 apache 自带的日志轮询工具 rotatelogs,据说在进行日志切割时容易丢日志,因此我们通常使用 cronolog (也就是方法2)进行日志轮询。
方法2:使用cronolog为每一天建立一个新的日志
同样也是在Apache的主配置文件中注释掉以下两行:
ErrorLog "logs/error_log"
CustomLog "logs/access_log" common
下载cronolog源码包
[root@localhost ~]# tar zxf cronolog-1.6.2.tar.gz -C /usr/src
[root@localhost ~]# cd /usr/src/cronolog-1.6.2/
[root@localhost cronolog-1.6.2]# ./configure && make && make install
//解压之后进行编译安装
[root@localhost ~]# vim /usr/local/http-2.4.23/conf/httpd.conf
//编辑Apache的主配置文件
//将方法1中写入的日志切割配置项删除,写入下面的两行配置CustomLog "|/usr/local/sbin/cronolog logs/access-%Y-%m-%d.log" combinedErrorLog "|/usr/local/sbin/cronolog logs/error-%Y-%m-%d.log"
//同样这里写的也是cronolog工具的绝对路径
为了更好的进行测试,建议将原本的日志文件进行删除、移动操作
[root@localhost ~]# rm -rf /usr/local/http-2.4.23/logs/*log
[root@localhost ~]# ls /usr/local/http-2.4.23/logs/
httpd.pid
[root@localhost ~]# ls /usr/local/http-2.4.23/logs/
access-2019-11-23.log error-2019-11-23.log httpd.pid
//测试访问一下,访问日志和错误日志即可产生
这样就已经实现了日志按天进行分割存放!
如果 Apache 中有多个虚拟主机,最好每个虚拟主机中放置一个这样的代码,并将日志文件名改成不同的名字。
如果网站的访问实在太大,也可以进行按小时分隔,方法如下:
基于第二种方法实现:
[root@localhost ~]# vim /usr/local/http-2.4.23/conf/httpd.conf
//将原本的两行配置内容修改如下:CustomLog "|/usr/local/sbin/cronolog logs/access-%Y-%m-%d.log.%H" combinedErrorLog "|/usr/local/sbin/cronolog logs/error-%Y-%m-%d.log.%H"
//就是在原本的配置上添加了“%H”表示按小时进行分隔
[root@localhost ~]# systemctl restart httpd
//重启Apache服务
自行进行测试访问,接下来查看日志文件,如图:
生产环境下,常用方法:
按天轮询:
CustomLog "|/usr/local/sbin/cronolog logs/access_www_%Y%m%d.log" combined
按小时轮询:
CustomLog "|/usr/local/sbin/cronolog logs /access_www_ %Y%m%d%H.log" combined
注意: 这两个管道日志文件程序还有一点不同之处是使用 cronolog 时如果日志是放在某个不存 在的路径则会自动创建目录,而使用 rotatelogs 时不能自动创建,这一点要特别注意 !
六、配置防盗链
有时候会突然发现网站的访问量越来越,千万不要高兴的太早,很有可能是被别人盗链了。打个比方说:你自己搭建了一个视频网站,然后别人将他网站上的视频的地址重定向到你的服务器上。这样你的网站访问量就会越来越大,消耗的资源也就越来越多!如何避免这种可能的发生,那么就需要使用防盗链。
方法1:使用rewrite模块实现
首先要确认Apache的rewrite module模块已经安装,可用:
[root@localhost ~]# apachectl -M | grep rewriterewrite_module (shared)
接下来编写Apache的主配置文件
[root@localhost ~]# vim /usr/local/http-2.4.23/conf/httpd.conf
LoadModule rewrite_module modules/mod_rewrite.so //找到这一行,默认是注释的,将#号删除即可
……………………
<Directory "/usr/local/http-2.4.23/htdocs"> //以下内容必须写在网站的根目录下RewriteEngine OnRewriteCond %{HTTP_REFERER} !^$RewriteCond %{HTTP_REFERER} !^http://192.168.1.1/.*$ [NC]RewriteRule .*\.(gif|jpg|swf)$ http://192.168.1.1/about/error.png [R,NC,L]
</Directory>
添加的内容相关解释:
- RewriteEngine On //启用rewrite(地址重定向)功能,必须填写;
- RewriteCond %{HTTP_REFERER} !^$ //允许用户在浏览器直接测试访问
- RewriteCond %{HTTP_REFERER} !^http://192.168.1.1/.*$ [NC] //允许通过192.168.1.1的地址进行访问
- RewriteRule .*.(gif|jpg|swf)$ http://192.168.1.1/about/error.png [R,NC,L] //将不满足以上策略的、后缀名为gif、jpg、swf的文件全部重定向到网页根目录的about目录中的error.png,要相当注意,about目录下的error.png文件存在,不然,警告信息和图片将无法在对方网站上显示。
详细介绍如图:
注意:测试时要清除浏览器缓存
下面进行测试:
实验环境有192.168.1.1(A)网站服务器和192.168.1.2(B)网站服务器,配置如下:
A服务器:
[root@localhost ~]# apachectl -M | grep rewriterewrite_module (shared)
[root@localhost ~]# vim /usr/local/http-2.4.23/conf/httpd.conf
LoadModule rewrite_module modules/mod_rewrite.so //找到这一行,默认是注释的,将#号删除即可
……………………
<Directory "/usr/local/http-2.4.23/htdocs"> //以下内容必须写在网站的根目录下RewriteEngine OnRewriteCond %{HTTP_REFERER} !^$RewriteCond %{HTTP_REFERER} !^http://192.168.1.1/.*$ [NC]RewriteRule .*\.(gif|jpg|swf)$ http://192.168.1.1/about/error.png [R,NC,L]
</Directory>
[root@localhost ~]# ll /usr/local/http-2.4.23/htdocs/
总用量 64
drwxr-xr-x. 2 root root 23 11月 25 14:45 about
-rw-r--r--. 1 root root 60108 11月 24 10:02 access.jpg //确保文件存在
-rw-r--r--. 1 root root 45 6月 12 2007 index.html
[root@localhost ~]# ll /usr/local/http-2.4.23/htdocs/about
总用量 236
-rw-r--r--. 1 root root 240595 11月 24 10:01 error.png //确保文件存在[root@localhost ~]# apachectl restart //重新启动httpd服务器
B服务器:
[root@localhost ~]# yum -y install httpd
//为了方便 起见,使用yum的方式安装httpd服务
[root@localhost ~]# vim /var/www/html/index.html
<a href="http://192.168.1.1/access.jpg">链接</a>
//手动安装的httpd的主页文件做一个超链接连接到A服务器的根目录下的access.jpg
//访问时会出现一个链接的超链接
这样当客户端访问B服务器时就会查看到error.png(访问的本意是访问access.jpg)
也可以让客户端的链接过来的时候访问到错误页面,方法如下:
修改A服务器的配置文件:
[root@localhost ~]# vim /usr/local/http-2.4.23/conf/httpd.conf
…………………… //省略部分内容RewriteEngine OnRewriteCond %{HTTP_REFERER} !^$RewriteCond %{HTTP_REFERER} !^http://192.168.1.1/.*$ [NC]#RewriteRule .*\.(gif|jpg|swf)$ http://192.168.1.1/about/error.png [R,NC,L] //将这条进行注释 RewriteRule .*\.(gif|jpg|png)$ - [F] //(强制 URL 为被禁止的 forbidden),强制当前 URL 为被禁止的,即,立即反馈一 个 HTTP 响应代码 403(被禁止的)
[root@localhost ~]# systemctl restart httpd
//重新启动httpd服务
再次访问就会出现这样的情况:
注意清除浏览器缓存
这样就证明了防盗链的作用!
方法 2:通过判断浏览器头信息来阻止请求
也就是利用 SetEnvIfNoCase 和 access。 这个方法可以通过阻止某些机器人或蜘蛛爬虫抓取你的网站来节省你的带宽流量。 语法: SetEnvIfNoCase attribute regex [!]env-variable[=value] [[!]env-variable[=value]] ... SetEnvIfNoCase 当满足某个条件时,为变量赋值,即根据客户端请求属性设置环境变量。 注:Referer :指明了请求当前资源原始资源的 URL,使用 referer 是可以防盗链 然后在找到自己网站对应的配置的地方(如在主配置文件中或虚拟主机
中),加入下列代码:
SetEnvIfNoCase Referer "^$" local_ref
SetEnvIfNoCase Referer"^http://www.benet.com/.*$" local_ref
SetEnvIfNoCase Referer"^http://benet.com/.*$"local_ref
<filesmatch"\.(mp3|mp4|zip|rar|jpg|gif|png)">
通过判断referer变量的值,来判断图片或资源的引用是否合法,只有在根据配置符合设定需求范围内的referer,这样的网站内容,才能调用访问指定的资源内容,从而实现了资源被网站盗链的目的。需要注意的是:是所有的用户代理(浏览器)都会设置referer变量,而且有的还可以手工修改erferer,referer是可以被伪造的,上面的配置只是一种简单的防护手段。应付一般的盗链足矣。
当网站被盗链,一般可以采取以下措施:
对本站的图片、视频、音频等文件标上自己的站名品牌或者相关水印;
设置防火墙,从源头IP进行控制
设置防盗链(根据referer机制)
网站被非法盗链使用,会导致网站带宽成本加大以及服务器压力加大,严重时会导致巨额的网站及正常用户访问受到影响。
好了,防盗链至此就实现了。
———————— 本文至此结束,感谢阅读 ————————
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- k8s容器环境收集应用日志到已有的ELK日志平台
Tags: k8s环境下的容器日志收集 K8S环境下面如何收集应用日志=== 在本文中重点讲一下K8S容器环境中如何收集容器的日志; 1. 容器日志收集方案的选择:在K8S集群中,容器的日志收集方案一般有三种;第一种方案是通过在每一个k8s节点安装日志收集客户端软件,比如fluentd。…...
2024/4/24 8:13:00 - git学习笔记(二)分支
1.创建分支git branch name2.切换分支git checkout name3.查看分支git branch4.合并分支到当前分支git checkout master ##切换到master分支git checkout name ##合并分支name到master5.删除分支git branch -d name6.查看分支合并记录git log --graph --pretty=oneline --abbr…...
2024/4/24 8:13:00 - BigOps自动化运维使用之局域网IP自动发现
IP自动发现解决了IP上的管理问题,特别适合于手动分配IP的大型事、企业和政府单位有历史性余留问题使得IP管理混乱。这个可以很好的解决这个问题。下面我们来一起设置这个IP自动发现功能。(1)添加服务树为更好的归类,在后期添加监控子网时需要使用。步骤:特殊控件——服务树…...
2024/4/24 8:12:56 - tcpdump 和 iptables
tcpdump基础用法 tcpdump -i ens33 -tnn dst port 80 -c 1000 #对ens33网卡 的80 端口进行抓包,只抓访问报文,且抓满1000个就停下,-tnn t是tcp的意思可换成u只抓udp或者两个tu两个都抓,nn的意思是显示端口,不加nn 80会被解析成http #dst 数据流向 发送地址>接收地址…...
2024/4/24 8:12:55 - MySQL——数据库基础操作(实战篇)
案例:建立学生成绩表 一,编译安装MySQL 1,安装环境组件 [root@localhost ~]# yum install -y \ ##安装环境组件 > ncurses \ > ncurese-devel \ ##控制终端屏幕显示的库 > cmake \ ##cmake工具 > bison ##语法分析 [r…...
2024/4/30 18:03:29 - Windows10安装Docker的一点思考
最近同事在windows7/10上使用docker遇到了些问题来咨询我,在尝试帮他解决后,自己也思考总结了下,现以博客的形式分享出来。环境说明:windows10专业版 64位一、Docker在Windows10上有两种部署方式1、安装DockerToolbox,该方法是利用VirtualBox创建了一个名为default的linux…...
2024/4/24 8:12:55 - 如何修改Linux系统语言
第一步:查看当前系统的语言 [root@client ~]# echo $LANG zh_CN.UTF-8 //中文 #en_US.UTF-8 //英文 第二步 修改当前系统语言临时更改系统语言 [root@client ~]# export LANG=en_US.UTF-8 //立即生效,重启后失效修改配置文件,并使其立即生效 #CentOS 7或RedHat 7之前版本…...
2024/4/24 8:12:58 - Python 搭建HTTP服务器
Python版HTTP服务器 闲话少说,首先确保装了Python 本次实在centos7环境下 Python内置了一个简单的HTTP服务器,只需要在命令行下面敲一行命令,一个HTTP服务器就起来了:python -m SimpleHTTPServer 80 python 2 python -m http.server 80 python 3 后面的80端口是可选的…...
2024/4/24 8:12:50 - centos6、7中升级默认版本python2.7.5到python3.7.3
话不多说,直接上操作过程 [root@py99 ]#mkdir /home/tools [root@py99 ]# cd !$ [root@py99 ]# wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz [root@py99 ]# tar xf Python-3.7.3.tgz [root@py99 ]# cd Python-3.7.3 [root@py99 ]# yum -y install gcc gc…...
2024/4/24 8:12:49 - 计算机小白从零开始的成长历程
算是计算机小白吧 在这里记录我的成长历程...
2024/4/24 8:12:48 - 第一天
每周写博文 blog.51cto.com(纪律部分)1 手机电脑不能有声音 2 不能带耳机 3上课不能睡觉 (课下部分)(1)1.整理一天笔记 2.整理一周博文资料3.基础薄弱 每天测试 (2)课程教学说明 1.) 硬件知识基础介绍 2.)操作系统安装部署3.)操作系统远程连接 4.)操作系…...
2024/4/24 8:12:47 - 详述Linux系统中Tomcat部署及优化
Tomcat介绍免费的、开放源代码的Web应用服务器 Apache软件基金会(Apache Software Foundation)Jakarta项目中的一个核心项目 由Apache、Sun和一些公司及个人共同开发而成 深受Java爱好者的喜爱,并得到部分软件开发商的认可 目前比较流行的Web应用服务器Tomcat核心组件Web容器完…...
2024/4/17 0:37:53 - Nginx Rewrite模块应用
应用场景1——基于域名的跳转 公司旧域名www.accp.com ,因业务需求有变更,需要使用新域名www.kgc.com 代替 1.不能废除旧域名2.从旧域名跳转到新域名,且保持其参数不变 部署环境 一台Linux服务器(192.168.142.130) 一台测试主机windows 7 1,安装Nginx服务 [root@localhos…...
2024/4/23 11:40:28 - Centos7搭建一个node.js项目
Centos7搭建一个node.js项目 一.基础环境部署 1.安装node和npm cd /usr/local/src/ wget http://nodejs.org/dist/v0.10.24/node-v0.10.24.tar.gz 2.解压文件并 安装node tar zxvf node-v0.10.24.tar.gz cd node-v0.10.24 ./configure --prefix=/usr/local/node/0.10.24 make m…...
2024/4/25 13:33:55 - MySQL——数据库介绍(理论篇)
数据库的基本概念 数据: 描述事物的符号记录称为数据(Data) 包括数字,文字,图形,图像,声音,档案记录等 以"记录"形式按统一的格式进行存储 表: 将不同的记录组织在一起,就形成了"表" 是用来存储具体数据的 数据库: 数据库就是表的集合,是存储数…...
2024/4/16 16:24:08 - git学习笔记(一)
1.git是什么分布式版本管理系统。2. git安装: apt install git -y ## ubuntu,debian yum install git -y ## centos,redhat 3. 配置git信息 git config --global user.name "your_name" git config --global user.email "email@example.com" 4.版本库…...
2024/4/19 21:18:02 - jenkins,自动部署scp传输错误的坑
环境:centos7 版本:jenkins-2.176.3-1.1.noarch.rpm 问题:使用root帐号安装jenkins之后,配置自动部署,打包完成项目不能scp到项目服务器,(测试服务器ssh端口默认22改为6688之后)提示Host key verification failed. lost connection[JENKINS] Archiving /opt/jenkins/wo…...
2024/4/16 16:24:03 - k8s实践(十三):kubectl插件管理工具krew
环境说明:主机名 操作系统版本 ip docker version kubelet version 配置 备注master Centos 7.6.1810 172.27.9.131 Docker 18.09.6 V1.14.2 2C2G master主机node01 Centos 7.6.1810 172.27.9.135 Docker 18.09.6 V1.14.2 2C2G node节点node02 Centos 7.6.1810 172.27.9.136 D…...
2024/4/20 5:56:30 - ExTiX 19.10 正式发布
该项目的发布公告称:“我已经发布了ExTiX的新版本——终极Linux系统(Ultimate Linux System)。我把它叫做ExTiX 19.10 LXQt Live DVD。ExTiX 19.10最好的地方是在运行系统的时候(通过DVD/U盘)或者从硬盘上运行,您可以使用Refracta Snapshot(预安装)来创建自己的实时可安装…...
2024/4/16 16:24:08 - Kubernetes node节点执行Kubectl提示无法连接至api-server
今天在Kubernetes的node节点上运行命令 [ kubectl ] 命令出现了如下错误 [root@k8s-node02 ~]# kubectl -s 10.0.0.31:8080 get nodes The connection to the server 10.0.0.31:8080 was refused - did you specify the right host or port? 出现这个问题的原因是kubectl命令需…...
2024/4/24 8:12:49
最新文章
- 《深入解析WIndows操作系统》第9章读书笔记
1、闪存类型:常见的闪存类型有NOR和NAND。NOR闪存在操作上最接近RAM,它的每个字节都可以被独立地寻址,而NAND闪存则被组织成以块为单位,就像磁盘一样。NOR类型的闪存用来设计保存计算机主板上的BIOS,而NAND类型的闪存被…...
2024/4/30 18:18:12 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - 【虚幻引擎】C++ slate全流程开发教程
本套课程介绍了使用我们的虚幻C去开发我们的编辑器,扩展我们的编辑器,设置我们自定义样式,Slate架构设计,自定义我们的编辑器样式,从基础的Slate控件到我们的布局,一步步的讲解我们的的Slate基础知识&#…...
2024/4/30 7:28:03 - Linux的软链接和硬链接
1、软链接 概念:给文件创建一个快捷方式,依赖原文件,和普通文件没有区别。 特性: 可以给存在的文件或目录创建软链接可以给不存在的文件或目录创建软链接可以跨文件系统创建软链接删除软链接不影响原文件、删除原文件会导致软链…...
2024/4/30 17:33:33 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/4/29 23:16:47 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/4/30 18:14:14 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/29 2:29:43 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/4/29 14:21:50 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/27 17:58:04 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/27 14:22:49 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/28 1:28:33 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/30 9:43:09 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/27 17:59:30 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/4/25 18:39:16 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/28 1:34:08 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/26 19:03:37 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/29 20:46:55 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/25 18:39:14 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/4/26 23:04:58 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/27 23:24:42 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/28 5:48:52 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/30 9:42:22 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/4/30 9:43:22 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/30 9:42:49 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57