3

我正在使用 cake1.3.5

我最近将一个实时工作站点移到了我的本地主机中:

在此处输入图像描述

我将 config.php 设置为我的本地数据库,但是当我进入该站点时,我看到了这个:

在此处输入图像描述

我是否缺少任何其他步骤(关于文件路径或其他内容)?

4

2 回答 2

5

Cake 将其所有调用定向到 webroot 文件夹(默认情况下称为 URL 重写)。这是通过文档根目录中的 .htaccess 文件实现的,该文件必须具有(用于 URL 重写工作)

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

webroot 文件夹中的 .htaccess 文件应包含

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d   // this line traps requests for directory
    RewriteCond %{REQUEST_FILENAME} !-f   // this line traps requests for file names
    RewriteRule ^(.*)$ index.php?/$1 [QSA,L]
</IfModule>

这两行RewriteCond %{REQUEST_FILENAME} !-d&RewriteCond %{REQUEST_FILENAME} !-f在解析目录和文件名的请求时是必不可少的。

该行RewriteRule ^(.*)$ index.php?/$1 [QSA,L]处理任何不是文件或目录的东西。

  1. 检查 mod_rewrite 是否启用。
  2. 必须有两个 .htaccess 文件,一个在根文件夹中,另一个在 webroot 文件夹中。这两个 .htaccess 文件的内容必须不同。

您可能想查看URL 重写

您可以从核心配置中关闭 URL 重写

于 2013-03-12T09:49:04.677 回答
0

经历了同样的场景,事实证明 localhost 无法识别短样式标签只有在服务器上的 php.ini 配置文件中启用它们时才可用。

当我将标签更改为所有页面时,所有页面都正常显示。

于 2016-04-05T21:17:07.547 回答