Linux unit9-apache

来源:互联网 发布:青岛淘宝代理 编辑:程序博客网 时间:2024/06/06 10:03

第九单元-apache设置


一、安装开启,及基本配置认识


1.安装开启
yum install httpd -y
systemctl start httpd
systemctl enable httpd
systemctl stop firewalld
systemctl disable firewalld
2.基本配置

***1***默认发布文件
index.html

***2***apache的配置文件
/etc/httpd/conf/httpd.conf
/etc/httpd/conf.d/*.conf

***3***apache的默认发布目录
/var/www/html

***4***apache的默认端口
80

二、修改默认发布文件和目录

1.修改默认发布文件
vim /etc/httpd/conf/httpd.conf
示图:修改内容,将index.html 改为westos.html,或者将westos.html写在index.html前边也可以


示图:westos.html文件内容


systemctl restart httpd  ##重启服务进行测试
测试:
访问http://172.25.254.198
示图:访问结果

2.修改默认发布目录
####当selinux为disabled状态时
vim /etc/httpd/conf/httpd.conf
示图:修改内容

mkdir /westos/www/test -p
cp /var/www/html/westos.html /westos/www/test/
vim /westos/www/test/westos.html
<h1>/westos/www/test/westos.html--Welcome<h1>

systemctl restart httpd

测试:
访问http://172.25.254.198
示图:测试结果

####当selinux为enforcing状态时
修改配置文件/tec/httpd/conf/httpd.conf如上所示,修改完毕后建立新的发布目录和发布文件内容
systemctl restart httpd

getenforce  ##查看当前selinux状态,为ehforcing

***修改新建立的发布目录的安全上下文

semanage fcontext -l | grep westos  
示图:修改前安全上下文类型

semanage fcontext -a -t  httpd_sys_content_t '/westos/www/test(/.*)?'  ##将/westos/www/test下所有文件的安全上下文的类型全部设置为httpd_sys_content_t
restorecon -RvvF /westos/www/test  ##刷新指定目录的安全上下文
semanage fcontext -l | grep westos
示图:修改后安全上下文

测试:
访问:http://172.25.254.198
示图:访问结果



三、设定访问

mkdir /var/www/html/admin
vim /var/www/html/admin/westos.html
<h1>admin-Welcome<h1>

1.设定ip的访问
vim /etc/httpd/conf/httd.conf
------------------
示图:允许所有人访问admin目录但是拒绝98用户访问

测试:分别使用172.25.254.98和172.25.254.244用户访问http://172.25.254.198/admin

示图:拒绝98访问


示图:允许其他用户访问


--------------------------------------

示图:只允许98用户访问


测试:分别使用172.25.254.98和172.25.254.244用户访问http://172.25.254.198/admin

示图:允许98用户访问


示图:拒绝其他用户访问

2.设定用户的访问
htpasswd -cm /etc/httpd/accessuser admin  ##首次建立用户时,用参数c
htpasswd -m /etc/httpd/accessuser tom   ##其余用户建立时,只需要参数m
示图:用户建立

cat /etc/httpd/accessuser  ##查看用户文件内容    
示图:文件内容

vim /etc/httpd/conf/httpd.conf
<Directory "/var/www/html/admin">
        AuthUserFile /etc/httpd/accessuser  ##用户文件来源
        AuthName "Please input your name and password!!!"  
        AuthType basic
        Require valid-user  ##所有用户都可以使用用户密码访问,Require user admin只许admin使用用户密码访问
</Directory>

四、建立虚拟主机

1.为虚拟主机建立发布目录及测试页
mkdir virtual/news.westos.com/html -p  ##建立发布目录
mkdir virtual/money.westos.com/html -p
echo "<h1>news.westos.com<h1>" > virtual/news.westos.com/html/index.html  ##建立测试页
echo "<h1>money.westos.com<h1>" > virtual/money.westos.com/html/index.html

2.配置
vim /etc/httpd/conf.d/default.conf  ##指定域名的访问都访问default
<Virtualhost _default_:80>  ##虚拟主机开启的端口
        DocumentRoot "/var/www/html"  ##虚拟主机的默认发布目录
        CustomLog "logs/default.log" combined  ##虚拟主机日志
</Virtualhost>

vim /etc/httpd/conf.d/news.conf  ##指定域名news.westos.com的访问到指定默认发布目录中
<Virtualhost *:80>
        ServerName "news.westos.com"  ##域名名称
        DocumentRoot "/var/www/virtual/news.westos.com/html"  ##指定默认发布目录
        Customlog "logs/news.log" combined  ##虚拟主机日志
</Virtualhost>
<Directory "/var/www/virtual/news.westos.com/html">  ##给默认发布目录授权访问
        Require all granted  ##都可以访问
</Directory>

vim /etc/httpd/conf.d/money.conf   ##指定域名money.westos.com的访问到指定默认发布目
录中
<Virtualhost *:80>
        ServerName "money.westos.com"
        DocumentRoot "/var/www/virtual/money.westos.com/html"
        Customlog "logs/news.log" combined
</Virtualhost>
<Directory "/var/www/virtual/money.westos.com/html">
        Require all granted
</Directory>

测试:
访问端修改解析文件/etc/hosts
添加内容:172.25.254.198 www.westos.com news.westos.com money.westos.com
示图:解析文件内容

示图:www.westos.com


示图:news.westos.com


示图:money.westos.com


五、配置httpd证书验证及网络重写

1.安装
yum install mod_ssl crypto-utils -y
2.配置
genkey www.westos.com
示图:操作过程

/etc/pki/tls/certs/www.westos.com.crt  ##生成的证书
/etc/pki/tls/private/www.westos.com.key  ##生成的钥匙

vim /etc/httpd/conf.d/login.conf
<lhost *:443>  
        ServerName "login.westos.com"
        DocumentRoot "/var/www/virtual/login.westos.com/html"
        CustomLog "logs/login.log" combined
        SSLEngine on  ##开始https功能
        SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt  ##证书
        SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key  ##钥匙
</Virtualhost>
<Directory "/var/www/virtual/login.westos.com/html">  ##给默认发布目录授权访问
        Require all granted
</Directory>
<Virtualhost *:80>  ##网页重写实现自动访问https
        ServerName login.westos.com
        RewriteEngine on
        RewriteRule ^(/.*)$ https://%{HTTP_HOST}$1 [redirect=301]
</Virtualhost>
##重写规则:
^(/.*)$                       客户主机在地址栏中写入的所有字符
https://                      定向称为鄂的访问协议
%{HTTP HOST}                  客户请求主机
$1                            $1的值就表示^(/.*)$
[redirect=301]                临时重定向,302为永久重定向

mkdir /var/www/virtual/login.westos.com/html -p
echo "<h1>login--Welcome<h1>" /var/www/virtual/login.westos.com/html/index.html

systemctl restart httpd

测试:
在访问端添加解析
172.25.254.198 login.westos.com
访问http://login.westos.com,会自动跳转到https://login.westos.com实现网页数据加密传输

示图:获取证书


示图:访问界面


示图:证书

六、语言

支持三种语言:php,html,cgi
############
#####php####
############
yum install php -y
vim /var/www/html/index.php
示图:php文件内容

systemctl restart httpd

测试:
访问http://172.25.254.198/index.php
示图:测试结果

############
####cgi#####
############
mkdir /var/www/html/cgi
vim idex.cgi

示图:cgi文件内容


chmod +x index.cgi  ##添加可执行权限


vim /etc/httpd/conf/httpd.conf
示图:配置文件添加内容

systemctl restart httpd
测试:
访问http://172.25.254.198/cgi/index.cgi
示图:测试结果


原创粉丝点击