[Apache 相关配置]

Apache 网站服务器 (httpd服务)

http 超文本传输协议
端口是 80/TCP
https 经TLS/SSL安全加密的超文本传输协议
端口是 443/TCP
网站内容默认存放路径 /var/www/html

一、配置默认的Apache服务

1、安装httpd的前提

(Yum 和 IP)详情请看 Linux的基础操作

1)有client(客户机)、server(服务机)     客户机测试,可以用Windows
2)client(客户机)、server(服务机)都配置好 同一网段的网络		
3)server(服务机)配置yum源

2、安装httpd服务

root@localhost ~]# yum  -y  install  httpd

root@localhost ~]# systemctl  restart  httpd

root@localhost ~]# systemctl  enable   httpd			安装好后设置为开机自启

3、配置防火墙 及 测试

root@localhost ~]# firewall-cmd --permanent --add-service=http

root@localhost ~]# firewall-cmd --reload
		也可以选择关闭防火墙

root@localhost ~]# curl http://192.168.100.10			用curl命令打开链接
root@localhost ~]# firefox http://192.168.100.10		用火狐打开链接	

二、配置基于用户的个人网站

基于第一步的基础上开始做

1、修改基于用户的httpd配置文件

root@localhost ~]# vim  /etc/httpd/conf.d/userdir.conf		
         UserDir  enabled  		  开启
         UserDir  public_html  	  去#注释

2、新建用户并创建个网页

root@localhost ~]# useradd  user0  			创建个user0的用户

root@localhost ~]# cd  /home/user0/			

root@localhost user0]# mkdir  public_html		在user0的家目录里创建public_html文件

root@localhost user0]# cd  public_html

root@localhost public_html]# echo  "this is website for user0">>index.html		把一个短句打印到超链接文件里

3、修改用户网页文件的访问权限

root@localhost ~]# chmod  o+x  /home/user0			给其他用户加执行权限

root@localhost ~]# systemctl  restart  httpd		重启服务

4、修改selinux权限 并 测试

root@localhost ~]# getsebool  -a|grep  home				查看home下的selinux权限

root@localhost ~]# setsebool  httpd_enable_homedirs  on 		

root@localhost ~]# curl http://192.168.100.10/~user0			用curl命令打开链接
root@localhost ~]# firefox http://192.168.100.10/~user0			用火狐打开链接	

三、配置基于域名访问的虚拟主机

虚拟主机就是 不在默认路径里 /var/www/html
例如 www.one.com 创在/www里

1、新建虚拟主机的网页文件

root@localhost ~]# mkdir  /www/	

root@localhost ~]# chmod  o+x  /www

root@localhost ~]# cd  /www

root@localhost ~]# mkdir  one

root@localhost ~]# cd  one

root@localhost one]# echo "this is a web for virtual host  www.one.com">>index.html

1、配置辅配置文件

root@localhost one]# cd /etc/httpd/conf.d
root@localhost conf.d]# vim  one.conf		新建一个one.conf的配置文件
	   <Directory /www/one>
				Require all granted
	   </Directory>
	   <VirtualHost 192.168.100.10>
				ServerName www.one.com
				DocumentRoot /www/one/
		</VirtualHost>

2、配置域名解析 并 重启服务

root@localhost ~]# vim /etc/hosts         服务端和客户端都要加
	 192.168.100.10   www.one.com
	 
root@localhost ~]# systemctl  restart httpd

3、修改网页文件的selinux上下文类型

root@localhost ~]# semanage fcontext -a -t httpd_sys_content_t '/www(/.*)?'			把/www目录下的上下文类型都修改成  httpd_sys_content_t 

root@localhost ~]# restorecon  -RFv  /www					强刷上下文类型

root@localhost ~]# curl http://www.one.com			用curl命令打开链接
root@localhost ~]# firefox http://www.one.com		用火狐打开链接	

四、基于端口访问虚拟主机

例如192.168.100.10:8088

1、新建虚拟主机的网页文件

root@localhost ~]# mkdir  /www/8088

root@localhost 8088]# echo "this is port 8088 for website www.one.com">>index.html

2、修改 配置文件

root@localhost 8088]# cd /etc/httpd/conf.d

root@localhost conf.d]# vim  8088.conf				在辅配置文件做修改
	  <Directory /www/8088/>
			Require all granted
	  </Directory>
	  <virtualHost 192.168.100.10:8088>
			DocumentRoot /www/8088/
			
root@localhost ~]# cd  /etc/httpd/conf/

root@localhost ~]# vim  httpd.conf					在主配置文件里做修改
      Listen  8088									添加一行

3、修改 selinux设置

将8088端口加入httpd服务端口类型

-m  修改
root@localhost ~]# semanage port -a 8088 -t http_port_t -p tcp
root@localhost ~]# semanage port -a 8089 -t http_port_t -p tcp
root@localhost ~]# semanage port -l | grep  http

4、在防火墙里放行8088端口 并测试

root@localhost ~]# firewall-cmd  --permanent  --add-port=8088/tcp

root@localhost ~]# firewall-cmd  --reload

root@localhost ~]# firewall-cmd  --list-all

root@localhost ~]# curl http://192.168.100.10:8088			用curl命令打开链接
root@localhost ~]# firefox http://192.168.100.10:8088		用火狐打开链接	

五、配置基于TLS加密的虚拟主机

刚刚安装Apache服务,没有做过任何配置
不能做基于用户访问

安装TLS加密软件
root@localhost ~]# yum -y install mod_ssl
	
生成密钥
root@localhost ~]# openssl genrsa >tlsweb.key
	
生成证书请求文件
root@localhost ~]# openssl req -new -key tlsweb.key > tlsweb.csr
	
生成证书文件
root@localhost ~]# openssl req -x509 -days 365 -key tlsweb.key -in tlsweb.csr >tlsweb.crt
	
修改ssl.conf配置文件
root@localhost ~]# vim /etc/httpd/conf.d/ssl.conf
      SSLCertificateFile /etc/pki/tls/certs/tlsweb.crt
      SSLCertificateKeyFile /etc/pki/tls/private/tlsweb.key
	  
把证书文件拷贝到certs/路径下面
root@localhost ~]# cp tlsweb.crt /etc/pki/tls/certs/
	
把秘钥文件拷贝到private/路径下面
root@localhost ~]# cp tlsweb.key /etc/pki/tls/private/
	
重启服务
root@localhost ~]# systemctl restart httpd
	
使用浏览器访问
root@localhost ~]# firefox https://192.168.100.10 
posted @ 2021-12-14 22:43  陽YANG  阅读(36)  评论(0编辑  收藏  举报