一. Apache 简介
Apache 是世界使用排名第一的 Web 服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的 Web 服务器端软件之一。
二. Apache 安装
注:以下操作均在 Centos7.x 系统下完成。
在 Centos 系统上,安装 Apache 服务非常简单,仅需执行下面这条命令。
yum install httpd
测试 Apache 服务是否安装成功,执行以下命令查看。
ps -ef | grep httpd
出现下图所示结果表示安装成功。
此时可以打开浏览器,输入主机 IP 进行访问,如果出现以下情况,说明防火墙配置有问题。
这时,有两种解决办法,推荐第一种。
由于 Apache 服务器默认走的 80 端口,在此放行 80 端口。
firewall-cmd –add-port=80/tcp
关闭防火墙
service firewalld stop
此时,再输入主机 ip 进行访问,发现可以访问成功。
至此,Apache 安装成功。
三. Apache 虚拟主机配置
如果想要配置虚拟主机,需要编辑 /etc/httpd/conf/httpd.conf(Apache 默认安装目录在 /etc/httpd/),添加以下内容。
# 任意主机可以通过 80 端口访问
<VirtualHost *:80>
# 域名为 www.panjingg.test
ServerName www.panjingg.test
# 网站内容存放根目录
DocumentRoot /data/www
<Directory “/data/www”>
# 允许符号链接
Options Indexes FollowSymLinks
# 不允许覆盖
AllowOverride None
# 要求授予所有
Require all granted
<Directory>
</VirtualHost>
修改完配置文件之后,需要对服务重启使配置生效,执行以下命令。
service httpd restart
由于系统没有 /data/www 目录,所以接下来需要创建 /data/www 目录,并在目录下创建一个 index.html 文件进行测试。
<!– index.html –>
<h1> 这是一个测试页面 </h1>
建议大家不要用 root 用户操作,最好创建一个网站管理员,并赋予其对 /data/www 目录的所有权限。
完成以上步骤后,打开浏览器,输入 www.panjingg.test 进行访问,发现将会报错。
原因是没有使用 DNS 进行解析,这里为了演示方便,修改了 hosts 文件,以 windows 系统为例,以管理员权限打开 C:\Windows\System32\drivers\etc\hosts 文件,在末尾添加如下内容:
# 主机 IP 域名
193.192.168.0.121 www.panjingg.test
添加完成后保存,打开浏览器,输入 www.panjingg.test,页面正常显示。
注:如果此时网页仍然不能访问,尝试执行命令 setenforce 0。
补充:
setenforce enforce 1 强制模式
setenforce enforce 0 宽松模式
但即使设置为宽松模式,服务器重启后又会变为强制模式,解决办法为:修改 /etc/selinux/config 文件,使 SELINUX=disable。
四. Apache 伪静态配置
伪静态是相对真实静态来讲的,通常我们为了增强搜索引擎的友好面,都将文章内容生成静态页面,但是有的朋友为了实时的显示一些信息。或者还想运用动态脚本解决一些问题。不能用静态的方式来展示网站内容。但是这就损失了对搜索引擎的友好面。怎么样在两者之间找个中间方法呢,这就产生了伪静态技术。就是展示出来的是以 html 一类的静态页面形式,但其实是用 ASP 一类的动态脚本来处理的。
Apache 伪静态实现步骤:
编辑 /etc/httpd/conf/httpd.conf 文件,添加如下内容,加载伪静态模块使伪静态功能生效。
LoadModule rewrite_module modules/mod_rewrite.so
接着重启服务使配置生效。
service httpd start
编辑 /etc/httpd/conf/httpd.conf 文件,添加如下内容。实现结果是将所有 *.jsp 定向到 index.html。
<VirtualHost *:80>
ServerName www.panjingg.test
DocumentRoot /data/www
<Directory “/data/www”>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*).jsp$ index.html
</IfModule>
</Directory>
</VirtualHost>
打开浏览器,进行测试。
至此,伪静态配置成功。