Linux下的apache的管理与使用以及web的优化

1.Apache的作用

在web被访问时通常使用http://的方式
http:// ##超文本传输协议
http:// 超文本传输协议提供软件:
Apache
nginx
stgw
jfe
Tengine

2.Apache的安装

dnf install httpd.x86_64 -y

3.Apache的启用

systemctl enable --now httpd ##开启服务并设定服务位开机启动
firewall-cmd --list-all ##查看火墙信息
firewall-cmd --permanent --add-service=http ##在火墙中永久开启http访问
firewall-cmd --permanent --add-service=https ##在火墙中永久开启https访问
firewall-cmd --reload ##刷新火墙使设定生效

4.Apache的基本信息

服务名称: httpd
配置文件:
/etc/httpd/conf/httpd.conf ##主配置文件
/etc/httpd/conf.d/*.conf ##子配置文件
默认发布目录: /var/www/html
默认发布文件: index.html
默认端口: 80 #http
443 #https
用户: apache
日志: /etc/httpd/logs

更改http端口号8080,访问http服务时只能通过8080端口
在这里插入图片描述

5.Apache的基本配置

Apache端口修改
vim /etc/httpd/conf/httpd.conf
Listen 6666
firewall-cmd --permanent --add-port=6666/tcp
firewall-cmd --reload
semanage port -l | grep http
semanage port -a -t http_port_t -p tcp 6666
systemctl restart httpd

默认发布文件
vim /etc/httpd/conf/httpd.conf

DirectoryIndex westos.html index.html

systemctl restart httpd

在这里插入图片描述
在这里插入图片描述

默认发布目录
vim /etc/httpd/conf/httpd.conf

DocumentRoot "/westos/html"
<Directory "/westos/html">
        Require all granted
</Directory>

systemctl restart httpd
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

6.Apache的访问控制

mkdir /var/www/html/westos
vim /var/www/html/westos/index.html

<h1>westosdir's page</h1>

firefox http://192.168.0.11/westos

1.基于客户端ip的访问控制
#ip白名单#

<Directory "/var/www/html/westos">
        Order Deny,Allow
        Allow from 192.168.0.10		
        Deny from All
</Directory>

在这里插入图片描述

#ip黑名单#

<Directory "/var/www/html/westos">
        Order Allow,Deny
        Allow from All		
        Deny from 192.168.0.10
</Directory>

在这里插入图片描述

2.基于用户认证
vim /etc/httpd/conf/httpd.conf

<Directory "/var/www/html/westos">
        AuthUserfile /etc/httpd/htpasswdfile			##指定认证文件
        AuthName "Please input your name and password"		##认证提示语
        AuthType basic						##认证类型
        Require user admin					##允许通过的认证用户 2选1
	    #Require valid-user					##允许所有用户通过认证 2选1
</Directory>

在这里插入图片描述

htpasswd -cm /etc/httpd/htpasswdfile admin ##生成认证文件
注意:
当/etc/httpd/htpasswdfile存在那么在添加用户时不要加-c参数否则会覆盖源文件内容
在这里插入图片描述在这里插入图片描述在这里插入图片描述

7.Apache的虚拟主机

mkdir -p /var/www/westos.com/{news,wenku}
echo “wenku’s page” >/var/www/westos.com/wenku/index.html
echo “news’s page” > /var/www/westos.com/news/index.html
echo “default’s page” > /var/www/html/index.html
在这里插入图片描述

vim /etc/httpd/Vhost.conf

<VirtualHost _default_:80>
	DocumentRoot "/var/www/html"
	CustomLog logs/default.log combined
</VirtualHost>
<VirtualHost *:80>
	ServerName wenku.westos.com
	DocumentRoot "/var/www/westos.com/wenku"
	CustomLog logs/wenku.log combined
</VirtualHost>
<VirtualHost *:80>
	ServerName news.westos.com
	DocumentRoot "/var/www/westos.com/news"
	CustomLog logs/news.log combined
</VirtualHost>

在这里插入图片描述

测试:
在浏览器所在主机中
vim /etc/hosts

192.168.0.11 www.westos.com wenku.westos.ocm news.westos.com

在这里插入图片描述

firefox http://www.westos.com
firefox http://wenku.westos.com
firefox http://news.westos.com
在这里插入图片描述在这里插入图片描述在这里插入图片描述

8.Apache的语言支持

dnf install php -y
systemctl restart httpd
firefox http://192.168.0.11/index.php
在这里插入图片描述

mkdir /var/www/html/cgidir
vim /var/www/html/cgidir/index.cgi
在这里插入图片描述

#!/usr/bin/perl
print "Content-type: text/html\n\n";
print `date`;

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

vim /etc/httpd/conf.d/vhost.conf

<Directory "/var/www/html/cgidir">
	Options +ExecCGI
	AddHandler cgi-script .cgi
</Directory>

在这里插入图片描述
在这里插入图片描述

firefox http://192.168.0.11/cgidir/index.cgi

wsgi
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

9.Apache的加密访问

安装加密插件dnf install mod_ssl -y
下载完成后可察看是否开启443接口
在这里插入图片描述

生成证书
openssl genrsa -out /etc/pki/tls/private/www.westos.com.key #生成私钥
openssl req -new -key /etc/pki/tls/private/www.westos.com.key -out /etc/pki/tls/certs/www.westos.com.csr ##生成证书签名文件
openssl x509 -req -days 365 -in /etc/pki/tls/certs/www.westos.com.csr -signkey /etc/pki/tls/private/www.westos.com.key -out /etc/pki/tls/certs/www.westos.com.crt #生成证书
x509 证书格式
-req 请求
-in 加载签证名称

在主配置文件中添加生成的钥匙
在这里插入图片描述

vim /etc/httpd/conf.d/vhost.conf
在这里插入图片描述
在/etc/hosts下添加域名
在这里插入图片描述

systemctl restart httpd
^(/.*)$ ##客户地址栏中输入的地址
%{HTTP_HOST} ##客户主机
$1 ##RewriteRule后面跟的第一串字符的值

点击advanced即可
在这里插入图片描述在这里插入图片描述在这里插入图片描述

squid 正向代理

实验环境:
单网卡主机设定ip不能上网
双网卡主机设定ip1可以连接单网卡主机,设定ip2可以上网
实验效果:
让单网卡主机不能上网但浏览器可以访问互联网页

操作:
在双网卡主机中
dnf install squid -y
vim /etc/squid/squid.conf
59 http_access allow all
65 cache_dir ufs /var/spool/squid 100 16 256

systemctl restart squid
firewall-cmd --permanent --add-port=3128/tcp
firewall-cmd --reload

在单网卡专辑中选择
NetWork Proxy
172.25.254.30 3128

测试:
在单网卡主机中
ping www.baidu.com 不通
在浏览器中访问www.baidu.com可以

squid反向代理

实验环境:
172.25.254.20 ##Apache服务器
172.25.254.30 ##squid,没有数据负责缓存

vim /etc/squid/squid.conf
http_port 80 vhost vport ##vhost 支持虚拟域名 vport 支持虚拟端口
#当172.25.254.30的80端口被访问会从172.25.254.20的80端口缓存数据
cache_peer 172.25.254.20 parent 80 0 proxy-only

systemctl restart squid

测试:
firefox http:/172.25.254.30
访问看到的时172.25.254.20上的数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值