我试图引用我的libs目录是一个兄弟目录到我的DocumentRoot 。
我正在使用以下ScriptAlias来尝试完成此操作。
ScriptAlias /libs/ "../libs"
但是,当我去example.com/libs/我得到一个以下错误
Forbidden You don't have permission to access /libs/ on this server
我能够使用以下configuration查看libs目录,所以我不认为这是一个文件权限错误。
<VirtualHost *> ServerName example.com ServerAlias www.example.com DocumentRoot C:/www/libs <VirtualHost *>
下面更相关的httpd.cong设置
<Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory> <Directory "C:/www"> Options Indexes FollowSymLinks AllowOverride None Order Deny,Allow Deny from none Allow from all </Directory> NameVirtualHost * <VirtualHost *> ServerName example.com ServerAlias www.example.com DocumentRoot C:/www/example ScriptAlias /libs/ "../libs" <Directory "C:/www/libs"> Options Indexes FollowSymLinks AllowOverride None Options +ExecCGI Order Deny,Allow Deny from none Allow from all </Directory> </VirtualHost>
以下是相互矛盾的:
ScriptAlias /libs/ "../libs" <Directory "C:/www/libs"> ... ... Options +ExecCGI ... ... ... </Directory>
看到这个链接: http : //httpd.apache.org/docs/2.0/mod/mod_alias.html#scriptalias
这两个指令基本上是相同的东西,除了你错过目录中的SetHandler行。
尝试删除选项行,或添加您的目录块中的SetHandler行,并更改为别名的ScriptAlias …