Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)

apache

虚拟主机构建

域名访问apache服务

服务端

cd /etc/httpd/conf.d/   apache脚本存放地址
ls            
vim README         查看readme文件
vim vhost.conf     新建脚本


        DocumentRoot /var/www/html
        CustomLog logs/default.log combined



systemctl restart httpd   重启服务

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第1张图片

客户端
进行本地域名解析

vim /etc/hosts
172.25.254.101 www.westos.com music.westos.com news.westos.com
  服务端ip       需要被解析的域名

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第2张图片
测试
失败

systemctl status httpd.service 查看apache是否打开
setenforce 0         可能是selinux强制状态未关,设为警示状态
systemctl restart httpd  重启apache服务

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第3张图片
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第4张图片
一个ip设置多个域名

访问主配置文件

vim /etc/httpd/conf/httpd.conf

还原配置

拷贝

DocumentRoot "/westos/html"

 Require all granted

递归新建目录

mkdir -p /var/www/vhost/music
mkdir -p /var/www/vhost/news

在这里插入图片描述
设置目录中共享文件的内容

vim /var/www/vhost/music/index.html
vim /var/www/vhost/news/index.html

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
写入脚本

vim vhost.conf 

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第5张图片
可用拷贝的内容进行快速设置
在这里插入图片描述
客户端
写入本地解析域名

vim /etc/hosts
172.25.254.101 www.westos.com music.westos.com news.westos.com

测试
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第6张图片
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第7张图片
用户限制
为黑白名单的设定

白名单


   Order Deny,Allow   先读Deny
   Allow from 172.25.254.70  允许ip=172.25.254.70访问
   Deny from all             禁止其他人访问

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第8张图片
测试
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第9张图片

黑名单


   Order Allow,Deny      先读Allow
   Allow from all         允许任何人读
   Deny from 172.25.254.70  不允许ip=172.25.254.70访问

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第10张图片
测试
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第11张图片
在这里插入图片描述

为限定用户访问

添加用户并设置密码

htpasswd -cm .apache_auth admin

[root@desktop httpd]# htpasswd -cm .apache_auth admin
New password: 
Re-type new password: 
Adding password for user admin

cat .apache_auth 
(.apache_auth为隐藏文件)
密码为加密字符

htpasswd -m .apache_auth admin  更改用户admin的密码

访问主配置文件

vim /etc/httpd/conf/httpd.conf

在主访问路径后加入

         
     AuthUserFile /etc/httpd/.apache_auth  指定加密文件
     AuthType basic      基础设备
     AuthName "Please input username and password"  进入界面显示
     Require user admin   指定用户
   

apache支持的语言

默认语言
html

php语言
新建php文件

vim /var/www/html/index.php
?php
                   phpinfo();
 ?>

下载php软件

yum install php

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第12张图片
测试

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第13张图片
自定义cgi接口语言
通用网关接口

cgi语言的执行

cd /var/www/cgi-bin/
vim index.cgi          新建cgi语言文件
 chmod +x index.cgi    给予可执行权限
./index.cgi            执行文件
 vim index.cgi

ls -Zd /var/www/cgi-bin/   查看/var/www/cgi-bin/ 的安全上下文
 
vim index.cgi        更改文件
#!/usr/bin/perl
   print "Content-type: text/html\n\n";
   print `date`;          执行data命令
                               
./index.cgi                执行


yum install httpd-manual-2.4.6-45.el7.noarch     安装apache目录

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第14张图片
查看manual
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第15张图片
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第16张图片
vim index.cgi
在这里插入图片描述
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第17张图片
修改文件使之执行date命令
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第18张图片
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第19张图片
使文件可用于网络共享

cd /var/www/html/
ls
mkdir cgi  在指定目录下建立cgi目录
cd cgi/
cp /var/www/cgi-bin/index.cgi .    将/var/www/cgi-bin/index.cgi复制到当前
ll                                 
cd /etc/httpd/conf.d/              
ls 
vim vhost.conf                     在脚本中指定
systemctl restart httpd.service    

       Options +ExecCGI
       AddHandler cgi-script .cgi
 

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第20张图片
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第21张图片
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第22张图片如果访问失败

ls -Zd
ls -Zd /var/www/cgi-bin/          查看新建目录的安全上下文
semanage fcontext -a -t httpd_sys_script_exec_t '/var/www/html/cgi(/.*)?'   修改文件安全上下文
restorecon -RvvF /var/www/html/cgi/    刷新
ls -Zd /var/www/html/cgi/              查看

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第23张图片

再次访问
Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第24张图片

wsgi 接口语言
为 Python 语言定义的 Web 服务器和 Web 应用程序或框架之间的一种简单而通用的接口

/var/www/cgi-bin/目录下写编写脚本

编写脚本

cd /var/www/cgi-bin/
ls
vim webapp.wsgi 

 #!/usr/bin/env python 
 import time
 
def application (environ, start_response):
    response_body = 'UNIX EPOCH time is now: %s\n' % time.time()
    status = '200 OK'
    response_headers = [('Content-Type', 'text/plain'),
                        ('Content-Length', '1'),
                        ('Content-Length', str(len(response_body)))]
   start_response(status, response_headers)
   return [response_body]

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第25张图片给予权限

chmod +x webapp.wsgi

设定配置文件

 vim  /etc/httpd/conf.d/vhost.conf

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第26张图片
因为用python编写,所以无法执行
下载wsig插件

yum install -y mod_wsgi.x86_64 

执行文件

python webapp.wsgi 

在这里插入图片描述
重启apache

客户端
编辑本地解析

vim /etc/hosts
172.25.254.101 www.westos.com music.westos.com news.westos.com wsig.westos.com

在这里插入图片描述
测试
成功

Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置)_第27张图片

你可能感兴趣的:(Apache服务(虚拟主机构建--用域名访问http、设定用户访问权限、apache支持语言的设置))