ServerrRoot:
ServerRoot 用于指定守护进程httpd的运行目录,httpd 在启动之后将自动将进程的当前目录改变为这个目录,因此如果设置文件中指定的文件或目录是相对路径,那么真实路径就位于这个ServerR oot定义的路径之下。
DocumentRoot:
服务器的web目录,用于存放web资源的目录
Options -Indexes:
阻止不存在 index.html 时候返回web目录文件列表,这里是-,如果是+则表示允许返回列表
AllowOverride:
指明 Apache 服务器是否去找.htacess
文件作为配置文件,如果设置为none
,那么服务器将忽略.htacess
文件。
.htaccess:
.htaccess
是一个纯文本文件,它里面存放着 Apache 服务器配置相关的指令。.htaccess
主要的作用有:URL 重写、自定义错误页面、MIME 类型配置以及访问权限控制等。主要体现在伪静态的应用、图片防盗链、自定义404错误页面、阻止/允许特定 IP/IP 段、目录浏览与主页、禁止访问指定文件类型、文件密码保护等。
.htaccess
的用途范围主要针对当前目录。
Directory权限配置:
- Order allow,deny
- deny 192.168
- allow from all
Order
用来指明allow
和deny
的顺序,上面的例子会先执行allow from all
在执行deny 192.168
FollowSymLinks:
允许使用符号链接
SymLinksifOwnerMatch:
如果那个链接目标文件的属主是当前运行apache程序的属主,就可以符号链接
正向代理:
<VirtualHost *:80>
DocumentRoot "D:/www/test"
ServerName www.test.com
<Directory "D:/www/test">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
#正向代理设置
ProxyRequests On#开启Apache正向代理
ProxyVia On#控制位于代理服务器链中的代理请求的流向
#用来控制谁可以访问你的代理
<Proxy *>
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Proxy>
</VirtualHost>
如果在浏览器端设置了代理(以火狐为例):
访问 www.sina.com
,观察 HTTP 请求 Response:
可以看到,Via:www.test.com
,正向代理成功了。
反向代理设置:
<VirtualHost *:80>
DocumentRoot "D:/xampp/htdocs/lisong"
ServerName lisong.com
<Directory />
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
#反向代理设置
ProxyPass /static http://www.xiazaiba.com/static
ProxyPassReverse /static http://www.xiazaiba.com/static
</VirtualHost>
<html>
<body>
lisong
<img src="static/images/logo.png"/>
</body>
</html>
ProxyPassReverse 的作用:
例如代理服务器的域名为www.proxy.com
,客户端请求的域为www.test.com
,当经过代理服务器处理完以后返回给客户端的是重定向到www.proxy.com/ok.html
(也即发一个 Redirect 指令给客户端),如果配置了ProxyPassReverse
,则会在发送Redirect
指令到客户端之前将重定向地址改为www.test.com/ok.html
参考:http://www.cnblogs.com/zemliu/archive/2012/04/18/2454655.html