Apache用户认证;域名跳转;Apache访问日志
扩展 :apache虚拟主机开启php的短标签 http://www.aminglinux.com/bbs/thread-5370-1-1.html
1. 编辑第二个虚拟主机,设定Apache用户认证(访问网站需要用户密码认证):
# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
插入内容如下(设定指定网站访问认证参数如下,位置如图):
AllowOverride AuthConfig
AuthName "111.com user auth"
AuthType Basic
AuthUserFile /data/.htpasswd
require valid-user
2. -c自动创建生成密码文件,创建可访问用户名,自定义密码:
# /usr/local/apache2.4/bin/htpasswd -c -m 密码文件自定义用户
# /usr/local/apache2.4/bin/htpasswd -c -m /data/.htpasswd hao
3. 第二次再建可访问用户名,自定义密码,不要再加-c选项,要不会覆盖掉密码文件:
# /usr/local/apache2.4/bin/htpasswd-m /data/.htpasswd hao1
4. 查看密码文件:
# cat /data/.htpasswd
5. 检测虚拟机配置文件是否有错误:
# /usr/local/apache2.4/bin/apachectl -t
6. 启动apache2.4/httpd:
# /usr/local/apache2.4/bin/apachectlstart
7. 重新加载配置文件(不会重启服务)
# /usr/local/apache2.4/bin/apachectlgraceful
8. curl 访问111.com,查看是否访问成功?报错如下:
# curl-x127.0.0.1:80111.com-I
报错 :401(用户认证加密访问受限了)
9. 打开windows系统找到hosts文件,笔记本格式打开编辑:
路径:C:\Windows\System32\drivers\etc添加上虚拟主机2的设定:111.com
(记得保存hosts记事本)
10. 在windows上,检查Linux服务器ip的80端口是否打开:
C:\Users\主内安详>telnet 192.168.211.128 80
11. Linux服务器上打开80端口:
# iptables -I INPUT -p tcp --dport 80 -j ACCEPT
(关闭80端口:iptables -D INPUT -p tcp --dport 80 -j ACCEPT )
12. 再次在windows上,检查Linux服务器ip的80端口是否打开:
C:\Users\主内安详>telnet 192.168.211.128 80
快捷键退出: Ctrl +]
13. 在window游览器上,访问 虚拟主机2加密认证的111.com地址:
此时,报401,并让其登陆加密访问的用户密码,就是刚刚设定的!
14. 用curl命令,来访问111.com,-u用来指定用户名密码,此时就是200 ok成功!
# curl -x127.0.0.1:80-uhao:admin 111.com -i
此方法用于:主网站的下级网站不想被其他人访问时候,
增加的用户认证!具体步骤如下:
15. 编辑虚拟主机配置文件中第二个虚拟主机,针对单个文件进行认证:
# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
增加内容(注意增加位置,如图):
16. 检测虚拟机配置文件是否有错误:
# /usr/local/apache2.4/bin/apachectl -t
17. 重新加载配置文件(不会重启服务)
# /usr/local/apache2.4/bin/apachectlgraceful
18. 创建并编辑123.php在111.com目录下:
# vim /data/wwwroot/111.com/123.php
添加内容:
页:
[1]