Apache优化

Apache优化

部署实验
安装httpd和插件
yum install -y httpd
yum install -y curl
systemctl start httpd ##重启

查看Apache版本信息
curl -I 192.168.100.10
在这里插入图片描述
把虚拟机添加一块网卡设置桥接模式,连上网可以查到淘宝等之类的版本信息

修改自己的版本信息
tar -zxvf httpd-2.4.38.tar.gz -C /usr/local/src/
cd /usr/local/src/httpd-2.4.38/
vim include/ap_release.h
在这里插入图片描述
安装依赖环境
yum -y install gcc gcc-c++ apr apr-devel cyrus-sasl-devel expat-devel libdb-devel openldap-devel apr-util-devel apr-util pcre-devel pcre openssl*

删除之前安装的httpd
yum -y remove httpd

cd /usr/local/src/httpd-2.4.38/
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi --enable-ssl --enable-mpms-shared=all

Make && make install ##编译安装

主配置文件
vim /usr/local/httpd/conf/httpd.conf
ServerName localhost:80 #修改这一行,加快重启
在这里插入图片描述

修改默认首页的内容
echo “xiaolaji” >> /usr/local/httpd/htdocs/index.html

设置Apache启动脚本
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
vim /etc/init.d/httpd #在第一行添加两行
#chkconfig: 2345 11 88
#despriction: Web S
在这里插入图片描述
ll !$ 查看脚本权限

在这里插入图片描述

设置开机自启
chkconfig --add httpd

systemctl start httpd ##启动服务

ln -s /usr/local/httpd/bin/* /usr/local/bin/ ##添加path环境变量

测试访问网页
在这里插入图片描述
测试
curl -I 192.168.100.10 ##现在看不到Apache的版本内容了

在这里插入图片描述

隐藏版本号

修改配置文件
vim /usr/local/httpd/conf/httpd.conf
495 Include conf/extra/httpd-default.conf #495行去掉注释
vim /usr/local/httpd/conf/extra/httpd-default.conf

[root@cong11 ~]# vim /usr/local/httpd/conf/extra/httpd-default.conf
改:
55 ServerTokens Full
65 ServerSignature Off
为:
55 ServerTokens Prod
65 ServerSignature On

在这里插入图片描述
重启服务 systemctl restart httpd

测试
curl -I 192.168.100.10
发现版本号没有了
在这里插入图片描述

查看运行Apache的默认用户

查看运行账号
ps -axu | grep httpd
在这里插入图片描述
创建Apache用户
useradd -M -s /sbin/nologin apache

vim /usr/local/httpd/conf/httpd.conf
在这里插入图片描述

设置整个httpd目录权限为Apache
chown -R apache:apache /usr/local/httpd

设置apache的网站目录属主和属组为daemon
chown -R daemon:daemon /usr/local/httpd/htdocs/

网页目录文件权限快速恢复
find /usr/local/httpd/htdocs -type f -exec chmod 644 {} ;
find /usr/local/httpd/htdocs -type d -exec chmod 755 {} ;

保护Apache日志 设置好apache日志文件权限
chown -R root:root /usr/local/httpd/logs/

systemctl restart httpd ##重启服务

Apache禁止目录遍历

(如果用户访问的时候要下载或上传的情况下,最好不要禁止)

在网站目录下创建目录
mkdir /usr/local/httpd/htdocs/{shadiao,asd,cxkdalanqiu.html}

移动index.html到opt下
mv /usr/local/httpd/htdocs/index.html /opt/
在这里插入图片描述
测试访问网页

发现自己的目录暴露在网页里

禁止目录遍历
修改httpd.conf配置文件
vim /usr/local/httpd/conf/httpd.conf
242 Options Indexes FollowSymLinks #去掉Indexes
242 Options FollowSymLinks

在这里插入图片描述
systemctl restart httpd ##重启服务

测试访问网页
在这里插入图片描述
这样自己的隐私不会暴露
在吧index.html移动回去
mv /opt/index.html /usr/local/httpd/htdocs/

测试
在这里插入图片描述

Apache日志分割

修改httpd.conf配置文件
vim /usr/local/httpd/conf/httpd.conf
修改
ErrorLog “logs/error_log”
为:
ErrorLog “|/usr/local/httpd/bin/rotatelogs -l logs/error_%Y%m%d.log 86400”
修改:
CustomLog logs/access_log common
为:
CustomLog “|/usr/local/httpd/bin/rotatelogs -l logs/access_%Y%m%d.log 86400” combined

在这里插入图片描述
在这里插入图片描述
Systemctl restart httpd ## 重启

测试
ls /usr/local/httpd/logs/
在这里插入图片描述

使用cronolog进行日志切换

tar zxf cronolog-1.6.2.tar.gz -C /usr/local/src/
cd /usr/local/src/cronolog-1.6.2/
./configure && make && make install ##预编译 编译安装

生成命令位置
find / -name cronolog

开启虚拟主机
vim /usr/local/httpd/conf/httpd.conf
Include conf/extra/httpd-vhosts.conf ##开启这一行
在这里插入图片描述

配置虚拟主机文件
vim /usr/local/httpd/conf/extra/httpd-vhosts.conf ##粘贴修改红色部分

在这里插入图片描述
配置hosts
Vim /etc/hosts
在这里插入图片描述

修改Windows主机hosts解析
修改C:\Windows\System32\drivers\etc下hosts在最后添加一行
192.168.100.10 www.mingliang.com
在这里插入图片描述
创建目录和文件
mkdir -p /www/{html,logs}
echo “xiaolaji zhencai” >> /www/html/index.html

systemctl restart httpd ##重启

访问虚拟主机

在这里插入图片描述

设置错误页面-开启压缩缓存功能

方法1
关闭虚拟主机
vim /usr/local/httpd/conf/httpd.conf
#Include conf/extra/httpd-vhosts.conf ##这行加上注释

修改主配置文件
vim /usr/local/httpd/conf/httpd.conf ##添加254行这部分
228 <Directory “/usr/local/httpd/htdocs”>
…………
254 ErrorDocument 404 /404.html
#将404错误跳转到/usr/local/httpd/htdocs下的404.html页面上
255

在这里插入图片描述
创建404页面
echo “404 qwer bangbang” > /usr/local/httpd/htdocs/404.html

重启服务
systemctl restart httpd

测试,打开错误页面
在这里插入图片描述

方法2

开启虚拟主机
vim /usr/local/httpd/conf/httpd.conf
Include conf/extra/httpd-vhosts.conf ##去掉注释

vim /usr/local/httpd/conf/extra/httpd-vhosts.conf ##添加ErrorDocument 404 http://www.mingliang.com
在这里插入图片描述

创建虚拟主机页面
mkdir -p /www/html
echo "cxk chang tiao rap lanqiu " >> /www/html/index.html
chown -R apache:apache /www/html/

修改hosts解析

修改Windows主机解析
我上面做了,这就不弄了

systemctl restart httpd ##重启

测试 访问错的网页
因为我是在一方案基础上做的,所以1上的也在,单做就没事了

启用压缩模块mod_deflate

模块检查

#apachectl -M | grep mod_deflate
deflate_module (static) #弹出此种结果,则为编译安装时装的
deflate_module (shared) #弹出此种结果,则为DSO方式安装的,没有弹出就没有安装

安装mod_deflate 模块

apxs -c -i -a /usr/local/src/httpd-2.4.38/modules/filters/mod_deflate.c

-c 此选项表明需要执行编译操作。
-i 此选项表示需要执行安装操作,以安装一个或多个动态共享对象到服务器的modules目录。
-a 此选项自动增加一个LoadModule行到httpd.conf文件中,以激活此模块,或者,如果此行已经存在,则启用之。

配置压缩模块
vim /usr/local/httpd/conf/httpd.conf #添加红色部分

106 LoadFile /usr/lib64/libz.so #添加这一行
107 LoadModule deflate_module modules/mod_deflate.so #打开这一行
151
152 #LoadModule cgi_module modules/mod_cgi.so
153 #在这3行后面添加以下内容
154

在这里插入图片描述

重启服务
systemctl restart httpd

创建测试文件
cp /etc/passwd /www/html/passwd.html

在360急速浏览器网页上安装yslow插件
在这里插入图片描述

打开passwd.html
在这里插入图片描述
打开插件
在这里插入图片描述
这个插件可能有点问题,我这个看不了
大概是下面图片那样
在这里插入图片描述
做的这里就结束了,这是一小部分的Apache优化,做的不好请见谅,如果有什么问题请小伙伴们留言,感谢!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章