Apache配置

文件系统和网络空间 最常用的配置段是针对文件系统和网络空间特定位置的配置段。首先必须理解文件系统和网络空间这两个概念的区别,文件系统是指操作系统所看见的磁盘视图,比 如,在Unix文件系统中,Apache会被默认安装到/usr/local/apache2 ,在Windows文件系统中,Apache会被默认安装到"C:/Program Files/Apache Group/Apache2"(注意:Apache始终用正斜杠而不是反斜杠作为路径的分隔符,即使是在Windows中)。相反,网络空间是网站被 web服务器发送以及被客户在浏览器中所看到的视图。所以网络空间中的路径/dir/ 在Apache采用默认安装路径的情况下对应于Unix文件系统中的路径/usr/local/apache2/htdocs/dir/ 。由于网页可以从数据库或其他地方动态生成,因此,网络空间无须直接映射到文件系统。

文件系统容器 和指令与其相应的正则表达式版本(和)一起作用于文件系统的特定部分。配置段中的指令作用于指定的文件系统目录及其所有子目录,.htaccess文件可以达到同样的效果。下例中,/var/web/dir1 及其所有子目录被允许进行目录索引。

<Directory /var/web/dir1> Options +Indexes </Directory>

配置段中的指令作用于特定的文件名,而无论这个文件实际存在于哪个目录。下例中的配置指令如果出现在配置文件的主服务器段,则会拒绝对位于任何目录下的private.html的访问。

<Files private.html> Order allow,deny Deny from all </Files>

<Files> 和<Directory>段的组合可以作用于文件系统中的特定文件。下例中的配置会拒绝对 /var/web/dir1/private.html 、/var/web/dir1/subdir2/private.html 、/var/web/dir1/subdir3/private.html等任何 /var/web/dir1/ 目录下private.html的访问。 <Directory /var/web/dir1> <Files private.html> Order allow,deny Deny from all </Files> </Directory>

网络空间容器

<Location> 指令与其相应的正则表达式版本(<LocationMatch>)一起作用于网络空间的特定部分。下例中的配置会拒绝对任何 以"/private"开头的URL路径的访问,比如:http://yoursite.example.com/private、http: //yoursite.example.com/private123、http://yoursite.example.com/private /dir/file.html 等所有以"/private"开头的URL路径。

<Location /private> Order Allow,Deny Deny from all </Location> <Location>指令与文件系统无关,下例演示了如何将特定的URL映射到Apache内部的处理器mod_status ,而并不要求文件系统中确实存在server-status文件。

<Location /server-status> SetHandler server-status </Location>

原文发布于微信公众号 - php(phpdaily)

原文发表时间:2014-10-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏QQ音乐技术团队的专栏

ContentProvider 引发闪退之谜

CP 在跨进程调用的场景中,作为数据提供的进程称作 Server 进程,请求数据的进程称作 Client 进程。当我们享受它在跨进程场景下带来的便利时,可能未曾...

3420
来自专栏哈雷彗星撞地球

RunLoop总结:RunLoop基础知识

没有实际应用场景,很难理解一些抽象空洞的东西,所以前面几篇文章先介绍了RunLoop的几个使用场景。 另外AsyncDisplayKit中也有大量使用RunL...

732
来自专栏pangguoming

API手册 常用功能

directive [ng] a form input input [checkbox] input [email] input [number] input ...

3099
来自专栏移动开发的那些事儿

Android中使用Contentprovider导致进程被杀死

Contentprovider也是四大组件之一,支持跨进程调用,因此肯定会用到IPC的Binder机制来实现跨进程调用,在应用层就是AIDL

461
来自专栏移动开发面面观

Handler源码分析

1025
来自专栏岑志军的专栏

AFN挂代理访问

1064
来自专栏腾讯Bugly的专栏

Android 7.0中ContentProvider实现原理

| 导语 本文描述了ContentProvider发布者和调用者这两在Framework层是如何实现的。 作为Android的四大组件之一,ContentPro...

3686
来自专栏c#开发者

ios-upload file with formdata onsumed web api 代码片段

代码 - - (IBAction)uploadAction:(id)sender {     NSString *urlstring=self.urlTextF...

2826
来自专栏MelonTeam专栏

iOS RunLoop的介绍

导语 一道题引出的对RunLoop的认知。 最近做到一道有关 runloop 的选择题,题目大概是这样的: 关于 Runloop 的说法中,哪些是...

23910
来自专栏iOSer成长记录

RunLoop 源码阅读

1705

扫描关注云+社区