htaccess“;“未找到对象”;XAMP和MAC OS X上的CakePhp

htaccess“;“未找到对象”;XAMP和MAC OS X上的CakePhp,php,apache,.htaccess,cakephp,Php,Apache,.htaccess,Cakephp,也许你在谷歌上看到过很多这样的问题。然而,我查阅了我能找到的大部分文档,仍然无法解决当前的问题 当我访问时,仍然收到此错误 但是,它可以与以下URL配合使用: 当然,CSS和Javascript没有正确加载。以下是我一直在尝试做的: 我确实修改了XAMPP/xamppfiles/etc文件夹中的httpd.conf。我确保服务器允许mod_重写 我还将我的工作目录添加到此文件中: Alias /phpserver /Users/username/WebSites/phpserver/webroo

也许你在谷歌上看到过很多这样的问题。然而,我查阅了我能找到的大部分文档,仍然无法解决当前的问题

当我访问时,仍然收到此错误

但是,它可以与以下URL配合使用:

当然,CSS和Javascript没有正确加载。以下是我一直在尝试做的:

我确实修改了XAMPP/xamppfiles/etc文件夹中的httpd.conf。我确保服务器允许mod_重写

我还将我的工作目录添加到此文件中:

Alias /phpserver /Users/username/WebSites/phpserver/webroot/
<Directory "/Users/username/WebSites/phpserver">
    Options Indexes FollowSymLinks ExecCGI Includes  
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>
Alias/phpserver/Users/username/WebSites/phpserver/webroot/
选项索引如下SYMLINKS ExecCGI包括
允许超越所有
命令允许,拒绝
通融
我还修改了DocumentRoot配置,以便:

<Directory />
    Options Indexes FollowSymLinks ExecCGI Includes
    AllowOverride All
    #XAMPP
    Order allow,deny
    Allow from all
</Directory>

选项索引如下SYMLINKS ExecCGI包括
允许超越所有
#XAMPP
命令允许,拒绝
通融
这些是apache的配置

对于CakePHP,我还使用控制台“烘焙”整个项目。/cake bake appname

我检查了所有的.htaccess,并按照web上的推荐进行了跟踪。这是位于应用程序根目录下的一个

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule    ^$    webroot/    [L]
    RewriteRule    (.*) webroot/$1    [L]
 </IfModule>

重新启动发动机
重写规则^$webroot/[L]
重写规则(.*)webroot/$1[L]
这是一个位于webroot文件夹中的文件

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>

重新启动发动机
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
重写规则^(.*)$index.php?url=$1[QSA,L]
请帮忙!我花了这么多时间在这上面:(

提前谢谢


编辑: 我通过将其添加到webroot文件夹内的.htaccess中修复了此问题: 重写基本/phpserver/

结果是这样的:

<IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /phpserver/
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
    </IfModule>

重新启动发动机
重写基本/phpserver/
重写cond%{REQUEST_FILENAME}!-d
重写cond%{REQUEST_FILENAME}!-f
重写规则^(.*)$index.php?url=$1[QSA,L]

谢谢你的快速回复。我做了,但它仍然不起作用。我甚至重新启动了我的计算机。打开AllowOverride All->AllowOverride None,然后重新启动apache。看看是否有效。嗨,Tri。你能编辑你的编辑,在
<IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /phpserver/
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
    </IfModule>