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 重启服务
客户端
进行本地域名解析
vim /etc/hosts
172.25.254.101 www.westos.com music.westos.com news.westos.com
服务端ip 需要被解析的域名
systemctl status httpd.service 查看apache是否打开
setenforce 0 可能是selinux强制状态未关,设为警示状态
systemctl restart httpd 重启apache服务
访问主配置文件
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
vim /etc/hosts
172.25.254.101 www.westos.com music.westos.com news.westos.com
白名单
Order Deny,Allow 先读Deny
Allow from 172.25.254.70 允许ip=172.25.254.70访问
Deny from all 禁止其他人访问
黑名单
Order Allow,Deny 先读Allow
Allow from all 允许任何人读
Deny from 172.25.254.70 不允许ip=172.25.254.70访问
为限定用户访问
添加用户并设置密码
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 指定用户
默认语言
html
php语言
新建php文件
vim /var/www/html/index.php
?php
phpinfo();
?>
下载php软件
yum install php
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目录
查看manual
vim index.cgi
修改文件使之执行date命令
使文件可用于网络共享
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
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/ 查看
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]
chmod +x webapp.wsgi
设定配置文件
vim /etc/httpd/conf.d/vhost.conf
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