linux学习第十章使用Apache服务部署静态网站

一、网站服务程序

Web网络服务是一种被动访问的服务程序,即只有接收到互联网中其他主机发出的请求后才会响应,最终用于提供服务程序的Web服务器会通过HTTP(超文本传输协议)或HTTPS(安全超文本传输协议)把请求的内容传送给用户

目前能够提供Web网络服务的程序有IIS、Nginx和Apache等

IIS:是window中默认的程序

Nginx:2004年俄罗斯研制出Nginx,Nginx程序作为一款轻量级的网站服务软件,因其稳定性和丰富的功能而快速占领服务器市场,但Nginx最被认可的还当是系统资源消耗低且并发能力强

Apache:程序作为老牌的Web服务程序,一方面在Web服务器软件市场具有相当高的占有率,另一方面Apache也是RHEL 7系统中默认的Web服务程序,而且还是RHCSA和RHCE认证考试的必考内容,

安装Apache:

1、安装httpd服务  需要使用到yum,步骤跳过具体在:https://my.oschina.net/u/4159006/blog/3093819中

yum install httpd   d代表环绕

2、在浏览器中输入自己的IP地址出现以下画面。

7754890edfaa3cc0cddddc8d5200f81848a.jpg

出现这个画面预示着可能存在两个问题

(1)这个网站没有内容,

(2)这个网站没有权限

那么下面逐一验证

echo hahahah >> /var/www/htme/index.html

刷新网站

31199f284bb8ce94279eb7134eecce52e27.jpg

出现内容了,所以hppt 默认的门户位置是,/var/www/html/index.html

将hppt默认门户修改

打开httpd服务程序的主配置文件,将约第119行用于定义网站数据保存路径的参数DocumentRoot修改为/home/wwwroot,同时还需要将约第124行用于定义目录权限的参数Directory后面的路径也修改为/home/wwwroot。配置文件修改完毕后即可保存并退出。

重启hppt服务  刷新网页  结果还是没有变说明存在了    SElinux

三、SELinux安全子系统

SELinux服务有三种配置模式,具体如下。

enforcing:强制启用安全策略模式,将拦截服务的不合法请求。

permissive:遇到服务越权访问时,只发出警告而不强制拦截。

disabled:对于越权的行为不警告也不拦截。

可以用setenforce [0|1]命令修改SELinux当前的运行模式(0为禁用,1为启用)。注意,这种修改只是临时的,在系统重启后就会失效:

semanage命令

semanage命令用于管理SELinux的策略,格式为“semanage [选项] [文件]”

查看 /var/www/        权限

[root@zhang www]# ls -ldZ
drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0   

所以我们需要将权限赋予给后来更改的位置

root@zhang zqs]# semanage fcontext -a -t httpd_sys_content_t /home/zqs
[root@zhang zqs]# semanage fcontext -a -t httpd_sys_content_t /home/zqs/*

#让其立即生效

[root@zhang zqs]# restorecon -Rv /home/zqs/
再刷新网站 就可以看到又有内容出现了

虚拟网站主机功能

Apache的虚拟主机功能是服务器基于用户请求的不同IP地址、主机域名或端口号,实现提供多个网站同时为外部提供访问服务的技术

1.基于IP地址

修改ip地址  vim /etc/sysconfig/network-scripts/ifcfg-eno16777736 

IPADDR0=192.168.10.10
IPADDR1=192.168.10.20
IPADDR2=192.168.10.30

分别创建三个目录

[root@zhang ~]# mkdir -p /home/www/10     echo 1010101010 >> /home/www/10 index.html
[root@zhang ~]# mkdir -p /home/www/20     echo 2020202020 >> /home/www/20 index.html
[root@zhang ~]# mkdir -p /home/www/30     echo 3030303030 >> /home/www/30 index.html

编辑http配置文件

vim /etc/httpd/conf/httpd.conf   再第大约113行编辑

113 <VirtualHost 192.168.10.10>
114 DocumentRoot /home/wwwroot/10
115 ServerName www.linuxprobe.com
116 <Directory /home/wwwroot/10 >
117 AllowOverride None
118 Require all granted
119 </Directory>
120 </VirtualHost>   #三个都要编辑

重启httpd服务

systemctl restart httpd

授权以防selinux

[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10
[root@linuxprobe ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10/*

立即生效

restorecon -Rv /home/wwwroot

另外两种基于主机域名、基于端口号的类似 只是稍有不同。

 Apache的访问控制

第1步:先在服务器上的网站数据目录中新建一个子目录,并在这个子目录中创建一个包含Successful单词的首页文件。

第1步:先在服务器上的网站数据目录中新建一个子目录,并在这个子目录中创建一个包含Successful单词的首页文件。

[root@zhang ~]# mkdir /var/www/html/server
[root@zhang ~]# echo "666" > /var/www/html/server/index.html

第2步:打开httpd服务的配置文件,在第129行后面添加下述规则来限制源主机的访问。这段规则的含义是允许使用Firefox浏览器的主机访问服务器上的首页文件,除此之外的所有请求都将被拒绝。

[root@张 ~]# vim /etc/httpd/conf/httpd.conf
129 <Directory "/var/www/html/server">
130 SetEnvIf User-Agent "Firefox" ff=1
131 Order allow,deny
132 Allow from env=ff
133 </Directory>

重启服务

[root@linuxprobe ~]# systemctl restart httpd
[root@linuxprobe ~]# firefox

网址输入:192.168.10.10/server

结果如下

0194869ac5b720c7078e8747c0efec7d415.jpg

转载于:https://my.oschina.net/u/4159006/blog/3093830

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值