| 
 | 
	
 
 
  扩展 : 
  apache虚拟主机开启php的短标签 : 
  http://ask.apelearn.com/question/5370 
  1. 编辑第二个虚拟主机,设定Apache用户认证(访问网站需要用户密码认证) 
  [root@hao-01 ~]# 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 参数 自动创建生成密码文件) : 
  [root@hao-01 ~]# /usr/local/apache2.4/bin/htpasswd -c -m 密码文件 自定义用 
  [root@hao-01 ~]# /usr/local/apache2.4/bin/htpasswd -c -m /data/.htpasswd hao1
 
 
  3. 第二次后创建可访问用户名,自定义密码(不要加-c 参数 会覆盖掉密码文件的) : 
  [root@hao-01 ~]# /usr/local/apache2.4/bin/htpasswd  -m /data/.htpasswd hao2 
 
  4. 查看密码文件内容 : 
  [root@hao-01 ~]# cat /data/.htpasswd 
 
  5. 检测虚拟主机配置文件是否有错误 ? 
  [root@hao-01 ~]# /usr/local/apache2.4/bin/apachectl -t 
 
  6. 启动apache2.4/httpd : 
  [root@hao-01 ~]# /usr/local/apache2.4/bin/apachectl  start 
 
  7. 重新加载配置文件(不会重启服务) : 
  [root@hao-01 ~]# /usr/local/apache2.4/bin/apachectl  graceful 
  8. curl 访问这个虚拟主机的主域名111.com,是否访问成功 ? 报错如下 : 
  [root@hao-01 ~]# curl  -x127.0.0.1:80  111.com  -I 
  报错 :401(用户认证加密访问受限了) 
 
  9. 用记事本打开Windows系统中hosts文件 : 
  路径:C:\Windows\System32\drivers\etc 
 
  添加上虚拟主机2的设定的主域名:111.com 
 
  (记得保存hosts记事本) 
  10. 在Windows上,检查Linux服务器ip的80端口是否打开 ? 
  C:\Users\VULCAN>telnet 192.168.223.128 80 
 
  11. Linux服务器上打开80端口(必须是httpd已启动) : 
  [root@hao-001 ~]# 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\VULCAN>telnet 192.168.223.128 80 
  快捷键组合退出: Ctrl 跟  ] 
 
  13. Window游览器上,访问虚拟主机2加密认证的主域名111.com地址 : 
  此时,有些游览器会报401,并让其登陆加密访问的用户密码,就是刚刚设定的! 
 
  14. 用curl命令,来访问虚拟主机2加密认证的主域名111.com : 
  -u用来指定用户名密码,此时就是200 ok成功! 
  [root@hao-01 ~]# curl -x127.0.0.1:80  -uhao:admin 111.com -i 
 
  下面的方法用于 : 
  主网站的下级网站,不想被其他人访问时候,增加的用户认证! 
  1. 编辑虚拟主机配置文件中,第二个虚拟主机参数 : 
  针对单个文件进行认证: 
  [root@hao-01 ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf 
  增加内容(注意增加位置,,如图): 
   
   
 
  2. 检测虚拟主机配置文件是否有错误 ? 
  [root@hao-01 ~]# /usr/local/apache2.4/bin/apachectl -t 
  3. 重新加载配置文件(不会重启服务) : 
  [root@hao-01 ~]# /usr/local/apache2.4/bin/apachectl  graceful 
  4. 创建并编辑123.php文件到111.com目录下 : 
  [root@hao-01 ~]# vim /data/wwwroot/111.com/123.php 
  添加内容: 
   |   
 
 
 
 | 
  
 |