概要:
1.Apache的基本配置
2.虚拟主机的配置
3.https配置
4.基于身份验证的配置
yum install httpd -y
systemctl start httpd ##开启服务
systemctl enable httpd ##开机自启
Apache主配置文件:/etc/httpd/conf/httpd.conf
ServerRoot “/etc/httpd” 用于指定Apache的运行目录
Listen 80 监听端口
DocumentRoot “/var/www/html” 网页文件的存放目录
<Directory "/var/www/html">
Require all granted 自定义目录权限
Directory>
ErrorLog “logs/error_log” 错误日志存放位置
DirectoryIndex index.html 默认主页名称
测试:在本地发布一个测试页,并在浏览器中测试
在/var/www/html/新建一个index.html并编辑:
然后在浏览器 中测试:
我们第一个网页就发布成功了!
一个服务器要为多个站点服务,举个例子,我们访问www.qq.com,然后又点击了新闻,也就是news.qq.com,虽然他们的主机名不同,但是却指向了同一个ip地址,也就是说多个虚拟主机在同一个apache服务器上。
(1)编写/etc/httpd/conf.d/default.conf
80>
documentroot /var/www/html ###默认发布目录
customlog "logs/default.log" combined ###生成日志
var/www/html>
require all granted ###授权
(1)编写/etc/httpd/conf.d/news.conf
servername news.qiaoba.com ###指定虚拟主机名称
documentroot /var/www/virtual/html
customlog "logs/news.log" combined
require all granted
(3)编写本地解析文件
(4)创建虚拟主机目录并编写测试页面
测试www.qiaoba.com:
测试news.qiaoba.com:
到这说明虚拟主机配置成功!
HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如登录界面、交易界面等。
如果加密的通信非常重要,而经过验证的身份不重要,管理员可以通过生成selfsigned certificate来避免与认证机构进行交互所带来的复杂性。 使用genkey程序(通过crypto-utils软件包分发),生成自签名证书及其关联的 私钥。为了简化起见,genkey将在“正确”的位置(/etc/pki/tls目录)创建证书及其 关联的密钥。相应地,必须以授权用户(root)身份运行该实用程序.
(1). 安装crypto-utils软件包
yum install crypto-utils mod_ssl -y
(2). 调用genkey,同时为生成的文件指定唯一名称(例如,服务器的主机全名)
(3).编辑/etc/httpd/conf.d/ssl.conf, 将SSLCertificateFile和SSLCertificateKeyFile指令设置为分别指向我们自定义证书和密钥文件。
输入网址:https://www.qiaoba.com
点击添加例外,然后获取证书,最后在网页中查看证书:
到这我们的https就设置好了!
Apache默认是不需要密码就能访问的,为了安全起见,需要进行身份认证。用户账户和密码存储在本地.htpasswd文件中。处于安全原因,该文件不能 保存在网站的DocumentRoot中,而应保存在Web服务器不提供服务的一些目录中。特殊 的htpasswd命令用于在.htpasswd文件中管理用户。
(1)在/var/www/html/ 下创建admin文件夹编写测试页面:
(2)在/etc/httpd/生成passwdfile
htpasswd -cm passwdfile admin
(3)配置主配置文件
(4)在浏览器测试
输入网址:www.qiaoba.com/admin
如果是不知道用户和密码的,点击取消,就会出现认证失败的提示:
输入正确用户和密码:
就能正确访问页面:
到此基于身份验证的访问就设置好了!
———————————end———————————