1

我已经在 Cakephp 的/app/webroot/blog/文件夹中安装了 Wordpress,并将 wordpress 永久链接设置更改为月份和名称(例如。http://abc.com/blog/2013/02/sample-post/)。

现在,当我查看帖子时,我得到了缺少控制器(错误:找不到 BlogController)。

我想更改 cakephp 路由,以便任何内容/blog/*都指向 webroot 博客文件夹。

有人可以帮我吗?

4

3 回答 3

6

当我们更改 Wordpress 的永久链接设置时,它会生成一个.htaccess文件,如果需要权限,我们必须创建它。

在上述情况下,文件夹.htaccess内没有文件/blog/。在更改永久链接设置时,我使用 Wordpress 提供的以下 mod_rewrite 规则创建了它。

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /blog/
  RewriteRule ^index\.php$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /blog/index.php [L]
</IfModule>

在此之后,一切正常。

于 2013-02-21T04:23:51.513 回答
2

无需将博客文件夹放在 webroot 文件夹中。您可以通过对 .htaccess 文件进行细微更改来访问您的文件夹。只需将您的 wordpress 文件夹放在带有 app 文件夹的 cakephp 根目录下,然后更改 .htaccess,如下所示。

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule (blog/.*) $1 [L] # adjust the regex to what you want.
    RewriteRule    ^$ app/webroot/    [L]
    RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>
于 2013-02-20T09:30:22.893 回答
0

我尝试了上述两种代码,但没有一个对我有用..然后我自己找到了一些东西并且它有效..所以在这里,希望这会对一些人有所帮助。

首先将 webroot 文件夹中的 WordPress 文件夹添加为博客。在博客里面粘贴 WordPress 目录和文件.. 安装 WordPress.. 现在您将在 WordPress 管理员常规设置中看到 WordPress 地址为http://cakephp/blog/app/webroot/blog,将其更改为http://cakephp /博客。保存 ..

现在在 WordPress 安装根文件夹中查找 .htaccess 文件,将 RewriteBase 和 RewriteRule (最后一个)更改为 RewriteBase /blog/ 和 RewriteRule 。/blog/index.php [L]

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /blog/
 RewriteRule ^index\.php$ – [L]
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule . /blog/index.php [L]
</IfModule>
于 2015-10-13T08:35:10.107 回答