Apache的虚拟主机、内部访问控制及支持语言

                              Apache的虚拟主机、内部访问控制及支持语言

(一)apache的虚拟主机

虚拟主机:这里是指一台服务器上面,可以存在多个“主网页”。

  模拟思路是:在子配置/etc/httpd/conf.d/目录下,分别新建adefault.conf、c.conf、linux.conf,并编辑默认的/var/www/html/index.html内容为www.westos.com为之后区分做铺垫,然后在新建的/var/www/virtual/目录下分别新建两个子目录c.westos.com/html和linux.westos.com/html/,再分别编辑子目录下的index.html内容,用于区分验证效果。

一起来做吧:

编辑默认的网页

[root@apache ~]# vim /var/www/html/index.html

新建目录

[root@apache ~]# mkdir /var/www/virtual/linux.westos.com/html -p

[root@apache ~]# mkdir /var/www/virtual/c.westos.com/html -p

编辑虚拟网页

[root@apache ~]# vim /var/www/virtual/c.westos.com/html/index.html

[root@apache ~]# vim /var/www/virtual/linux.westos.com/html/index.html

创建编辑子配置文件

[root@apache ~]# vim /etc/httpd/conf.d/adefault.conf

[root@apache ~]# vim /etc/httpd/conf.d/c.conf

[root@apache ~]# vim /etc/httpd/conf.d/linux.conf

验证测试:

在测试主机中做好,本地解析(浏览器所在的本地主机)

[kiosk@fundation86 Desktop]$ vim /etc/hosts

接下来开始测试:

(二)apache内部的访问控制

1、针对与主机的访问控制

[root@apache ~]# mkdir /var/www/html/test/

[root@apache ~]# vim /var/www/html/test/index.html

1】拉黑主机86,即除了主机86,其他的主机都能看

[root@apache ~]# vim /etc/httpd/conf.d/adefault.conf

[root@apache ~]# systemctl restart httpd

验证:在主机172.25.254.86的浏览器中输入172.25.254.224/test

【2】保留主机86,拉黑除过86以外的主机

[root@apache ~]# vim /etc/httpd/conf.d/adefault.conf

[root@apache ~]# systemctl restart httpd

验证:在主机172.25.254.86的浏览器中输入172.25.254.224/test

2、用户认证方式的访问控制

新建用户admin

[root@apache ~]# htpasswd -cm /etc/httpd/userpass admin

新建用户admin1

[root@apache ~]# htpasswd -m /etc/httpd/userpass admin1

注意: -cm中的c是覆盖性创建,常用在第一次创建

[root@apache ~]# mkdir /var/www/html/admin

[root@apache ~]# vim /var/www/html/admin/index.html

[root@apache ~]# systemctl restart httpd

[root@apache ~]# vim /etc/httpd/conf.d/adefault.conf

验证:

http://172.25.254.224

http://172.25.254.224/admin

用户admin可以查看

用户admin1则不能查看

配置对有效的用户都可以看:

[root@apache ~]# vim /etc/httpd/conf.d/adefault.conf

重启服务

[root@apache ~]# systemctl restart httpd

测试不再赘述

(三)apache支持的语言

  支持html、php、cgi 语言;不支持jsp  asp ,如果要用需要翻译之

 1、html

上述皆是html的例子,这里不再赘述

 2、php

[root@apache ~]# yum install php -y

[root@apache ~]# vim /var/www/html/index.php

[root@apache ~]# vim /etc/httpd/conf/httpd.conf

[root@apache ~]# systemctl restart httpd

演示:http://172.25.254.224/index.php

3、cgi

[root@apache ~]# mkdir -p /var/www/html/cgi

[root@apache ~]# semanage fcontext -a -t httpd_sys_script_exec_t '/var/www/html/cgi(/.*)?'

[root@apache ~]# restorecon -RvvF /var/www/html/cgi/

[root@apache ~]# chmod +x /var/www/html/cgi/index.cgi

[root@apache ~]# vim /var/www/html/cgi/index.cgi

本地测试

[root@apache ~]# /var/www/html/cgi/index.cgi

[root@apache ~]# vim /etc/httpd/conf.d/adefault.conf

[root@apache ~]# vim /etc/httpd/conf/httpd.conf

[root@apache ~]# systemctl restart httpd

http://测试

http://172.25.254.224/cgi/index.cgi

猜你喜欢

转载自blog.csdn.net/qq_40628106/article/details/84075146