安装apache网站服务程序
[root@localhost Desktop]# yum install httpd
//安装httpd服务
[root@localhost Desktop]#systemctl start httpd
//开启服务
[root@localhost Desktop]#systemctl enable httpd
//加入开机自启
配置服务文件参数
名称 | 存放位置 |
---|---|
服务目录 | /etc/httpd |
主配置文件 | /etc/httpd/conf/httpd.conf |
网站数据目录 | /var/www/html |
修改网站数据目录
mkdir /home/wwwroot //创建新的网站数据目录
vim /etc/httpd/conf/httpd.conf //打开配置文件
修改如下两行
DocumnetRoot "/home/wwwroot"
Directory "/home/wwwroot"
//重启并加入启动项
systemctl restart httpd
systemctl enable httpd
个人用户主页文件
vim /etc/httpd/conf.d/userdir.conf
//配置网站服务子配置文件
修改UserDir diaabled 为 UserDir public_html
重启并加入自启
su - linux //切换用户
mkdir public_html //创建目录
cd public_html 进入目录
echo "test" > index.html
cd..
chmod -Rf 755 public_html home/linux //设置权限
至此访问ip/~用户名即可访问
虚拟主机功能
vim /etc/httpd/conf/httpd.conf
cd home
mkdir -p wwwroot/10
mkdir -p wwwroot/20
mkdir -p wwwroot/30
网卡配置中加入
IPADDR0 192.168.10.10
IPADDR1 192.168.10.20
IPADDR2 192.168.10.30
重启网卡,确保三个IP地址可以ping通
echo "192.168.10.10" >/home/wwwroot/10/index.html
echo "192.168.10.20" >/home/wwwroot/20/index.html
echo "192.168.10.30" >/home/wwwroot/30/index.html
//分别为三个网站写入主页文件
vim /etc/httpd/conf/httpd.conf
//加入以下内容
<virtualhost 192.168.10.10>
decumentroot /home/wwwroot/10
servername www.linux.com
<directory /home/wwwroot/10>
allowoverride none
require all granted
</directory>
</virtualhost>
<virtualhost 192.168.10.20>
decumentroot /home/wwwroot/20
servername www.linux.com
<directory /home/wwwroot/20>
allowoverride none
require all granted
</directory>
</virtualhost>
<virtualhost 192.168.10.30>
decumentroot /home/wwwroot/30
servername www.linux.com
<directory /home/wwwroot/30>
allowoverride none
require all granted
</directory>
</virtualhost>
重启httpd服务完成配置
1.什么是Web网络服务?
**答:**一种允许用户通过浏览器访问到互联网中各种资源的服务。
2.相较于Nginx服务程序,Apache服务程序最大的优势是什么?
**答:**Apache服务程序具备跨平台特性、安全性,而且拥有快速、可靠、简单的API扩展。
3.httpd服务程序没有检查到首页文件,会提示报错信息吗?
**答:**不会,httpd服务在未找到网站首页文件时,会向访客显示一个默认页面。
4.简述Apache服务主配置文件中全局配置参数、区域配置参数和注释信息的作用。
**答:**全局配置参数是一种全局性的配置参数,可作用于对所有的子站点;区域配置参数则是单独针对于每个独立的子站点进行设置的;而注释信息一般是对服务程序的功能或某一行参数进行介绍。
5.简述SELinux服务的作用。
**答:**为了让各个服务进程都受到约束,使其仅获取到本应获取的资源。
6.在使用getenforce命令查看SELinux服务模式时,发现其配置模式为permissive,这代表强制开启模式吗?
**答:**不是,强制开启模式是enforcing,而permissive是只发出警告而不强制拦截的模式。
7.在使用semanage命令修改了文件上应用的SELinux安全上下文后,还需要执行什么命令才可以让更改立即生效?
**答:**还需要restorecon命令即可让新的SELinux安全上下文参数立即生效。
8.要想查询并过滤出所有与HTTP协议相关的SELinux域策略有哪些,应该怎么做呢?
**答:**可以结合管道符来实现,即执行getsebool -a | grep http命令。
9. Apache服务程序可以基于哪些资源来创建虚拟主机网站呢?
**答:**可以基于IP地址、主机名(域名)或者端口号创建虚拟主机网站。
10.相对于基于IP地址和基于主机名(域名)配置的虚拟主机网站来说,使用端口号配置虚拟主机网站有哪些特点?
**答:**在使用端口号来配置虚拟主机网站时,必须要考虑到SELinux域对httpd服务程序所用端口号的控制策略,还要在httpd服务程序的主配置文件中使用Listen参数来开启要监听的端口号。