2

我正在尝试让 CakePHP 应用程序工作。我使用 xampp 并将我的应用程序文件放在 /xampp/htdocs 中。对于 .htaccess 配置,我参考 http://book.cakephp.org/1.2/view/37/Apache-and-mod_rewrite-and-htaccess。之后我尝试运行我的应用程序,但我在浏览器中收到了这条消息。

The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there was an error in a CGI script.

我没有使用 CakePHP 的所有其他应用程序在 localhost 上运行良好,没有任何错误。我认为这个问题与.htaccess 有关。有什么建议么 ?

编辑了 我的 .htaccess 文件

**/xampp/htdocs/app/webroot/.htaccess**

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

**/xampp/htdocs/app/.htaccess**

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

**/xampp/htdocs/.htaccess**

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

1 回答 1

0

我认为您的 .htaccess 文件看起来正确。您可能需要告诉 Apache 您的应用程序的 webroot 在哪里。
尝试在您的 Apache 配置中添加一个虚拟主机条目

里面\xampp\apache\conf\extra\httpd-vhosts.conf

尝试添加类似:

<VirtualHost *:80>
   ServerName localhost
   DocumentRoot c:\xampp\htdocs\app\webroot  <-(use the actual path here)
</VirtualHost>

然后,您应该能够访问 CackPHP 应用程序,http://localhost
请确保删除任何其他可能发生冲突的 VirtualHost 块,尽管如果您正在使用 XAMPP 的新副本,则此文件中的所有内容都将被注释掉。
不要忘记重新启动 Apache 以使更改生效。

于 2013-03-30T23:02:23.927 回答