1、把http服务的编码改为 utf-8 ,把var/www/html目录下 设置不允许目录索引,允许局部配置
[root@localhost html]# vi /etc/httpd/conf/httpd.conf
按:进入命令行 ,再输入 /AddDefau,按回车
看有AddDefaultCharset ,如果没有,按 n 键 查找下一个
改为
AddDefaultCharset utf-8
,如下图
同上面的操作
:/AllowOverride 查找, 找到其中 <Directory "var/www/html">
将下面的二个修改如下:
Options -Indexes FollowSymLinks (不允许目录索引)
AllowOverride All
(允许局部配置)
(注意:
全局配置: 写在 httpd.conf 文件
局部配置: 写在 .htaccess 文件
Options -Indexes FollowSymLinks 不允许目录索引 即是访问var/www/html目录,看不到里面的东西
Options Indexes FollowSymLinks 允许目录索引 访问var/www/html目录,可以遍历里面的东西
AllowOverride All 允许局部配置 即是var/www/html目录下 有.htaccess局部配置文件,就以这个里面设置为准
AllowOverride None 不允许局部配置
)
2、重启httpd服务,使配置生效
service httpd restart
停止 httpd: [ 确定 ]启动 httpd: [ 确定 ]
还有另一种:
[root@localhost html]# apachectl restart
3、分别创建lab 和 exam 目录,在其下创建1.txt 和2.txt
cd /var/www/html
[root@localhost html]#mkdir lab exam
[root@localhost html]#cd lab
[root@localhost lab]#cat > 1.txt
实验cd /var/www/html/exam
[root@localhost exam]#cat > 2.txt
测试4、为 exam 配置局部配置文件
cat > .htaccess
Options Indexes (允许目录索引)5、测试 不允许目录索引
在浏览器输入http://192.168.170.4/lab/,有以下错误提示
在浏览器输入http://192.168.170.4/exam/,正常显示, 证明exam目录下的局部配置文件生效
.
6、如果想lab目录,要 指定帐号和密码登录后 才能查看 (身份验证)
cd /var/www/html/lab
[root@localhost lab]# cat > .htaccessOptions Indexes
AuthType Basic
AuthName "teach"
AuthUserFile "/var/www/users"
Require valid-user
htpasswd -c /var/www/users wang (添加用户)
New password:Re-type new password:
Adding password for user wang
[root@localhost lab]# chown apache:apache /var/www/users (加权限)
测试:
1、
[root@localhost lab]# vi /etc/httpd/conf/httpd.conf
UserDir disable ( 这个把# 注释掉)
UserDir public_html (这个去掉 # 注释)如下图:
[root@localhost lab]# apachectl restart
su - yanji
[yanji@localhost yanji]$mkdir public_html
[yanji@localhost yanji]$cd public_html
[yanji@localhost public_html]$cat > index.html
yanji个人主页(即是 个人主页 就是 用户public_html 目录下的 index.html)
这时候由于 权限问题 ,会有下面错误
解决方案: 给yanji 和 public_html 目录加权限
chmod 701 .
[yanji@localhost public_html]$cd /home/yanji
[yanji@localhost yanji]$ chmod 701 .
至此,完成