我正在尝试引用我的 libs 目录,它是我的兄弟目录DocumentRoot
。
我正在使用以下ScriptAlias
方法尝试实现这一点。
ScriptAlias /libs/ "../libs"
但是当我访问 example.com/libs/ 时出现以下错误
Forbidden
You don't have permission to access /libs/ on this server
我能够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>
答案1
以下内容相互冲突:
ScriptAlias /libs/ "../libs"
<Directory "C:/www/libs">
...
...
Options +ExecCGI
...
...
...
</Directory>
请参阅此链接:http://httpd.apache.org/docs/2.0/mod/mod_alias.html#scriptalias
这两个指令基本上是相同的,只是在 Directory 中缺少 SetHandler 行。
尝试删除选项行,或者在目录块中添加 SetHandler 行并将 ScriptAlias 更改为 Alias...