Apache<上> -----基本配置&访问控制&虚拟主机

目录

1.Apache的作用

2.Apache的安装及启用

3.Apache的基本信息

4.Apache的基本配置 

 4.1端口修改

4.2默认发布文件 

4.3 默认发布目录

5.Apache的访问控制

5.1基于客户端ip的访问控制

5.2 基于用户的访问控制: 

6.Apache的虚拟主机


1.Apache的作用

在web被访问时通常使用http://的方式。

http://即超文本传输协议。

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。

http://超文本传输协议提供软件:
Apache、nginx、stgw、jfe、Tengine

curl -I 163.com/baidu.com/taobao.com   #查看

2.Apache的安装及启用

安装:

dnf install -y httpd

启用:

systemctl enable --now httpd
#开启服务并设定无复开机自启

firewall-cmd --permanent --add-service=http
#在火墙中永久开启http访问
firewall-cmd --permanent --add-service=https
#在火墙中永久开启https访问
firewall-cmd --reload
#刷新火墙使设定生效
firewall-cmd --list-all
#查看是否生效

3.Apache的基本信息

所提供服务名称:   httpd
主配置文件:    /etc/httpd/conf/httpd.conf
子配置文件:    /etc/httpd/conf.d/*.conf
默认发布目录:    /var/www/html
默认发布文件:    index.html
默认端口    http:80 / https:443
系统中对应用户:    apache
日志存放路径:    /etc/httpd/logs
 

查询:

查询端口:netstat -antlupe | grep httpd / ss -antlupe | grep httpd

查询用户:ps aux | grep httpd

 

4.Apache的基本配置 

 4.1端口修改

vim /etc/httpd/conf/httpd.conf
Listen 80 ---> 8080 #更改端口

firewall-cmd --permanent --add-port=8080/tcp
#在火墙中添加端口
firewall-cmd --reload
systemctl restart httpd

 vim /etc/httpd/conf/httpd.conf

  vim /etc/httpd/conf/httpd.conf

注意:8080端口是被用于WWW代理服务的,可以实现网页浏览,经常在访问某个网站或使用代理服务器的时候,会加上“:8080”端口号。另外Apache Tomcat web server安装后,默认的服务端口就是8080。 

4.2默认发布文件 

认发布文件如果不存在,访问的内容为测试页; 默认发布文件如果存在,访问的内容为文件内容。

1)默认访问文件存在时,更改默认文件内容

vim /var/www/html/westos.html ---> hello westos
vim /var/www/html/index.html ---> Timi

 浏览器访问 ,默认看到index.html

2) 改变配置文件使其显示 westos.html 内容

vim /etc/httpd/conf/httpd.conf
DirectoryIndex  westos.html   index.html
默认会先访问前面的默认发布文件,如果失效再访问后面的)

systemctl restart httpd

 浏览器访问 ,默认看到index.html已变为westos.html

4.3 默认发布目录

更改配置文件,指定默认发布目录位置并授权


[root@westos_ftp ~]# mkdir /westos_apache
[root@westos_ftp ~]# vim /westos_apache/index.html
[root@westos_ftp ~]# cat  /westos_apache/index.html
westos_apache
[root@westos_ftp ~]# semanage fcontext -a -t httpd_sys_content_t '/westos_apache(/.*)?'
[root@westos_ftp ~]# restorecon -RvvF /westos_apache/
[root@westos_ftp ~]# vim /etc/httpd/conf/httpd.conf
[root@westos_ftp ~]# systemctl restart httpd 

 

 vim /etc/httpd/conf/httpd.conf
 

vim /etc/httpd/conf/httpd.conf

#DocumentRoot "/var/www/html"
DocumentRoot "/westos/html"
<Directory "/westos/html">  
  Require all granted 
</Directory> 
systemctl restart httpd

 

5.Apache的访问控制

5.1基于客户端ip的访问控制

> ip黑名单在配置文件中的更改:

1)在httpd的共享位置/var/www/html目录下,建立westos目录,在该目录下编写默认发布文件index.html,修改主配置文件 /etc/httpd/conf/httpd.conf,重启服务。

2)IP用户黑名单,先读取allow,后读取deny,后读会覆盖先读:不允许172.25.254.128访问。


>先读deny,再读allow,允许172.25.254.128访问

步骤:

[root@num1 html]# vim /etc/httpd/conf/httpd.conf

 <Directory "/var/www/html/westos">
         Order deny,allow
         allow from 172.25.254.77
         deny from all
 </Directory>
[root@num1 html]# systemctl restart httpd

5.2 基于用户的访问控制: 

1.生成认证文件

[root@num1 httpd]# cd /etc/httpd    
[root@num1 httpd]# ls
conf  conf.d  conf.modules.d  logs  modules  run  state
[root@num1 httpd]# htpasswd -cm .htpasswd admin   生成admin用户认证文件
New password:                                     设置密码
Re-type new password:                             确认密码
Adding password for user admin                      
[root@num1 httpd]# htpasswd -m .htpasswd api     生成api 用户认证文件
New password:
Re-type new password:
Adding password for user api
[root@num1 httpd]# cat .htpasswd
admin:$apr1$xOJS9iGj$TvEW2/Toyj9KmIsvQbHwC0
api:$apr1$jvtBnT0.$ferpNEXNURtPo4w/PqZ9q1          查看认证文件 

 注意: 第二次成认证文件时,中间用-m ,如果用-cm 第一次认证将会被覆盖掉,-c是创建,-m是加密

 2.编写测试页

[root@num1 ~]# mkdir -p /var/www/html/westos
[root@num1 ~]# cd /var/www/html/westos
[root@num1 westos]# ls
index.html
[root@num1 westos]# vim index.html
hello westos'world

3.在配置文件更改用户认证信息 

vim /etc/httpd/conf/httpd.conf

 DocumentRoot "/var/www/html"
 <Directory "/var/www/html/westos">
        AuthUserfile /etc/httpd/.htpasswd
        AuthName "Please input username and password !!"
        AuthType basic
       #Require user admin  允许指定用户验证
        Require valid-user  允许所有用户验证
 </Directory>

systemctl restart httpd

4. 浏览器访问172.25.254.113/westos,需要用户认证
 

6.Apache的虚拟主机

1.还原主配置文件,注释掉/westos/html这些

2. 一个apache发布多个页面,编写子页面测试页

[root@num1 conf]# mkdir -p /var/www/virtual/westos.org/{linux,lee}
[root@num1 conf]# vim /var/www/virtual/westos.org/linux/index.html
[root@num1 conf]# vim /var/www/virtual/westos.org/lee/index.html
[root@num1 conf]# cat /var/www/virtual/westos.org/linux/index.html
welcome linux
[root@num1 conf]# cat /var/www/virtual/westos.org/lee/index.html
welcome lee

3.在httpd的子配置文件中配置虚拟主机

 4.添加地址解析(用哪台主机的浏览器访问,就在哪台主机中添加地址解析)

 5.结果测试

重启服务:systemctl restart httpd

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值