apache-server

来源:互联网 发布:php 数据录入系统 编辑:程序博客网 时间:2024/05/23 00:50

一. apache

企业中常用的web服务,用来提供http://(超文本传输协议)

二. apache的安装部署

1. 搭建yum源

注:yum源搭建过程中,需要确保另一台主机的httpd服务开启以及firewalld的关闭,并且所访问的文件在共享发布目录中有挂载

2. 安装httpd服务以及httpd手册

yum install -y httpd                        #安装httpd服务


yum install -y httpd-manual          #安装httpd手册


systemctl start httpd                    #开启httpd服务

systemctl enable httpd                #让httpd服务开机自启

systemctl stop firewalld              #关闭火墙

systemctl disable firewalld         #让火墙开机不自启


测试httpd服务:


测试httpd-manual:


三. 修改httpd默认配置文件

1. 查询httpd配置文件

rpm -qc httpd                        #httpd配置文件的查询

/etc/httpd/conf/httpd.conf     #httpd主配置文件


2. 修改默认端口

ss -antlupe | grep httpd    #查询端口


注:默认端口为80

测试:


3. 修改默认发布文件

修改前:index.html


修改后:test  index.html


注:httpd默认发布文件为index.html,但修改后test的优先级高于index.html,当test不存在时,读取index.html

html  #超文本编辑语言

xml   #可辨识标记语言,主要用于数据封装

4. 修改默认发布目录

mkdir /www/html -p                    #创建所需目录

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

systemctl restart httpd               #重启httpd服务

ls -Z /var/www/                            #查询原默认发布目录安全上下文

ls -Z /www/                                  #查询修改默认发布目录安全上下文

semanage fcontext -a -t httpd_sys_content_t '/www(/.*)'        #修改安全上下文

restorecon -RvvF /www/                                                             #刷新安全上下文

vim /www/html/index.html           #编辑默认发布文件


注:由于默认发布目录的修改涉及selinux安全上下文,因此在配置文件中修改完成后,还需要修改安全上下文方能生效

四. apache的虚拟主机                            #一台主机可以发布多个站点

mkdir /var/www/virtual/taobao/html -p                    #创建虚拟主机的默认发布目录

mkdir /var/www/virtual/jingdong/html -p                 #创建虚拟主机的默认发布目录

vim /var/www/virtual/taobao/html/index.html          #编辑虚拟主机默认发布文件 <h1>www.taobao.com</h1>

vim /var/www/virtual/jingdong/html/index.html       #编辑虚拟主机的默认发布文件 <h1>www.jingdong.com</h1>

cd /etc/httpd/conf.d                #httpd子配置目录

vim a_default.conf


vim taobao.conf


vim jingdong.conf


systemctl restart httpd


注:ServerName                           #指定站点名称

        DocumentRoot                      #站点默认发布目录

        CustomLog                            #站点日志,combined表示四种日志的集合

测试:

测试主机 vim /etc/hosts 编辑指向文件

172.25.254.170 www.westos.com taobao.mayun.com jingdong.liuqiangdong.com

1> /var/www/html/index.html


2> /var/www/virtual/taobao/html/index.html


3> /var/www/virtual/jingdong/html/index.html


注:apache的虚拟主机相关信息在httpd子配置文件中编辑,测试时是在另一台主机浏览器中输入站点名称,可以浏览虚拟主机默认发布文件中的内容

五.  apache的黑白名单

1.白名单

mkdir /var/www/html/boy

vim /var/www/html/boy/index.html

vim /etc/httpd/conf.d/a_default.conf

systemctl restart httpd


2. 黑名单

vim /etc/httpd/conf.d/a_default.conf

systemctl restart httpd


注:apache黑白名单的的出现方式为覆盖型,根据配置文件中Order的先后顺序读取,后读取的会覆盖先读取的内容,以此确定黑白名单

六. 用户方式的访问

mkdir /var/www/html/girl

vim /var/www/html/girl/index.html

vim /etc/httpd/conf.d/a_default.conf

systemctl restart httpd


htpasswd -cm /etc/httpd/userpass zhangsan         #在/etc/httpd下建立文件userpass,并生成用户zhangsan

htpasswd -m /etc/httpd/userpass lisi                      #在/etc/httpd下建立文件userpass,并追加生成用户lisi


测试1:Require valid-user



测试2:Require user zhangsan

vim /etc/httpd/conf.d/a_default.conf

systemctl restart httpd

用户lisi登陆


用户zhangsan登陆


注:在每次登陆后需要清除历史记录,否则将会对后续登陆时直接进入,对后续结果产生影响

七. Apache支持的语言

1. html                                          #index.html为默认发布文件

2. php

yum install -y php                         #安装php服务

vim /etc/httpd/conf/httpd.conf     #修改默认发布文件,将index.php放在index.html之前

systemctl restart httpd

vim /var/www/html/index.php     #编辑php文件

systemctl restart httpd



3. cgi

vim /var/www/cgi-bin/index.cgi

chmod +x /var/www/cgi-bin/index.cgi

/var/www/cgi-bin/index.cgi                  #执行脚本文件


注:`date`表示可以执行date命令,因此print `date`不止是打印date,而且还打印输出的时间

vim /etc/httpd/conf.d/a_default.conf

systemctl restart httpd


八. https

https:超文本传输加密协议

1. https访问配置

yum install -y mod_ssl                #安装ssl模块


yum install -y crypto-utils            #安装网页加密软件


systemctl restart httpd               

systemctl stop firewalld

genkey www.sky.com                 #网页加密








vim /var/www/html/index.html  


vim /etc/httpd/conf.d/ssl.conf    #配置加密解密文件

SSLCertificateFile /etc/pki/tls/certs/www.sky.com.crt               #解密

SSLCertificateKeyFile /etc/pki/tls/private/www.sky.com.key   #加密

systemctl restart httpd

测试:



2. 强制加密访问

vim /etc/httpd/conf.d/login.conf

systemctl restart httpd

mkdir /var/www/virtual/login -p

vim /var/www/virtual/login/index.html


注:https默认端口为443

测试:

测试主机需配置本地解析文件,如:172.25.254.170 login.sky.com


注:

^(/.*)$        #客户在浏览器地址栏中输入的所有字符

https://       #强制客户加密访问

%{HTTP_HOST}      #客户请求主机

$1             #表示“^(/.*)$”的值

[redirect=301]          #临时重写,302为永久转换




原创粉丝点击