繁体   English   中英

Windows子目录上的Apache 403(禁止)

[英]Apache 403 (Forbidden) on subdirectory on Windows

所以昨天我在Windows 8计算机上安装了Apache 2.2,PHP 5.3和MySQL。 我在两个文件上都使用了相同的vhost / .htaccess文件,但它在Mac和Windows上均无法使用。 基本上,当我转到“ mysite.dev”时,它将呈现网站的主页,但是一旦我转到任何页面,例如“ mysite.dev/about/”,我都会收到403禁止错误。

我已经验证Apache在我的计算机上作为“系统”运行,然后确保从用户文件夹到根目录的所有权限都被设置为用户/组系统的“完全访问”。

我已经尝试了很多事情,但无法弄清楚它,而且很烦人。 无论如何,我已经在所有设置/日志下面发布了。 提前致谢。

虚拟主机:

<VirtualHost *:80>
    ServerAdmin MyEmail@gmail.com
    DocumentRoot "C:/Users/Michael/Dropbox/Sites/onmytv"
    ServerName onmytv.dev
    ServerAlias www.onmytv.dev

    <Directory "C:/Users/Michael/Dropbox/Sites/onmytv">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order Deny,Allow
        Allow from all
    </Directory>
</VirtualHost>

的.htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ %{DOCUMENT_ROOT}/index.php/$1 [L]

网页上显示的错误:

Forbidden

You don't have permission to access /C:/Users/Michael/Dropbox/Sites/onmytv/index.php/about/ on this server.

error.log中

[error] [client 127.0.0.1] (20023)The given path was above the root path: Cannot map GET /about/ HTTP/1.1 to file

access.log的

127.0.0.1 - - [02/Nov/2012:17:57:17 -0400] "GET /about/ HTTP/1.1" 403 256

解决方案是更改.htaccess文件中的以下内容

RewriteRule ^(.*)$ %{DOCUMENT_ROOT}/index.php/$1 [L]

RewriteRule ^(.*)$ index.php/$1 [L]

感谢@Svetlio提供有用的评论:)

用这个:

<VirtualHost *:80>
    ServerAdmin MyEmail@gmail.com
    DocumentRoot "C:/Users/Michael/Dropbox/Sites/onmytv"
    ServerName onmytv.dev
    ServerAlias www.onmytv.dev

    <Directory "C:/Users/Michael/Dropbox/Sites/onmytv">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order Deny,Allow
        Allow from all
        Require all granted
    </Directory>
</VirtualHost>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM