Chinaunix首页 | 论坛 | 博客
  • 博客访问: 232622
  • 博文数量: 52
  • 博客积分: 3010
  • 博客等级: 中校
  • 技术积分: 731
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-25 17:46
文章分类
文章存档

2009年(13)

2008年(39)

我的朋友

分类: 系统运维

2008-12-05 13:07:40

开始之前,先介绍一下.htaccess,因为一会我们会用。
一  使用.htaccess文件
可以使用.htaccess文件改变主配置文件中的配置,但是它只能设置对目录的访问控制,
这个目录就是.htaccess文件存放的目录。与使用Include指令不同,.htaccess文件中的配置
可以覆盖主配置文件中的配置,而使用Include 指令只是将子配置文件简单的包含进主配置
文件之中。
(1)何时使用.htaccess文件。有如下两种情况需要使用.htaccess文件:
Ø 在多个用户之间分割配置。
Ø 想在不重新启动服务器的情况下改变服务器配置。
提示: 在可能的情况下尽量避免使用.htaccess 文件,因为使用.htaccess 文件会降低
服务器的运行性能。
(2)要使用.htaccess文件必须经过两个配置步骤:
Ø 首先在主配置文件中启用并控制对.htaccess文件的使用。
Ø 然后在需要覆盖主配置文件的目录下生成.htaccess文件。
 (3)启用并控制使用.htaccess文件
设置文件名称。必须保证在主配置文件中包含如下的配置语句:
AccessFileName .htaccess

Order allow,deny
Deny from all

(4)控制在.htaccess文件中可以使用的指令组。要控制在.htaccess文件中可以使用的
指令组,需要在主配置文件中使用AllowOverride指令。
下面 列出了可以在AllowOverride指令所使用的指令组以及指 令 组 可 用 指 令 说 明
AuthConfig :AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile,AuthName, AuthType, AuthUserFile, Require ,这些主要进行认证、授权以及安全的相关指令
FileInfo     :DefaultType, ErrorDocument, ForceType, LanguagePriority,SetHandler, SetInputFilter, SetOutputFilter这些控制文件处理方式的相关指令
Indexes       :AddDescription, AddIcon, AddIconByEncoding, AddIconByType, 这些主要控制目录列表方式的相关指令
Limit        :Allow,Deny,Order 这些是进行目录访问控制的相关指令
Options      :Options, XBitHack    这些是启用不能在主配置文件中使用的各种选项
All          :全部指令组    这样可以使用以上所有指令
None          :禁止使用所有指令   使用此指令禁止处理.htaccess 文件
生成.htaccess文件
当在主配置文件中配置了对.htaccess 文件的启用和控制之后,接下来就可以在需要覆
盖主配置文件的目录下生成.htaccess 文件。.htaccess 文件中可以使用的配置指令取决于主
配置文件中AllowOverride 指令的设置
下面一个例子,首先在文档根目录下生成一个private 目录,并创建测试文件
# cd /var/www/html
# mkdir private
# cd private
# touch test
//修改配置前,在客户浏览器查看结果,如图7-3 所示
//修改主配置文件
# vi /etc/httpd/conf/httpd.conf
//添加如下配置语句

AllowOverride Options

#
//重新启动httpd
# service httpd restart
//在/var/www/html/private 目录下生成.htaccess 文件
# vi /var/www/html/private/.htaccess
//添加如下配置语句
Options –Indexes


//通过查看配置结果,可以证明.htaccess 已经生效。即对private 目录
//的访问不生成文件列表
上面的例子中,是先重新启动了Apache 服务器,然后才生成.htaccess 文
件。也就是说,对.htaccess文件的修改不用重新启动服务器即可生效。
二   配每个用户的web站点
  1.配置步骤
配置每个用户的Web 站点的意图是使在安装了Apache 的本地计算机上,拥有用户账
号的每个用户都能够架设自己单独的Web 站点。
要配置每个用户的Web 站点,要经过下面的配置步骤:
Ø 修改主配置文件启用每个用户的Web 站点配置。
Ø 修改主配置文件为每个用户的Web 站点目录配置访问控制。
 2.配置举例
下面举例说明配置步骤。
//修改主配置文件
# vi /etc/httpd/conf/httpd.conf
//修改如下部分的配置

//基于安全考虑,禁止root 用户使用自己的个人站点
UserDir disable root
//配置对每个用户Web 站点目录的设置
UserDir public_html

//设置每个用户Web 站点目录的访问权限,将下面配置行前的“#”去掉

AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec

Order allow,deny
Allow from all


Order deny,allow
Deny from all


//重新启动httpd
# service httpd restart
下面说明每个用户要创建自己的Web 站点,需要执行的步骤。以osmond 用户为例,
想要创建自己的Web 站点的每个用户都要执行下面的步骤。
//查看当前用户
$ whoami
jiangtaodengni
//回到自家目录的根
$ cd
//创建目录jiangtao
$ mkdir public_html
//修改jiangtao 目录的权限
$ cd ..
$ chmod 711 jiangtaodengni
//创建index.html
$ cd ~/public_html/
$ vi index.html
//显示index.html 的内容
$ cat index.html
jiangtaodengni ’Site.
1)上例中直接用vi 编辑了一个index.html 文件用于测试。实际应该使用
ftp 或DAV 方式上传文件。
(2)使用浏览器访问自己的主页时,使用下面格式的URL:
地址或FQDN/~用户名
若主机的IP 地址为192.168.1.100,用户名为osmond,URL为
阅读(1382) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~