3

私は2時間解決策を探していましたが、何もうまくいかないようです...ここに私の問題があります:

ルート (var/www) に WordPress をインストールしました。http://www.geekderek.comにアクセスすると、自分のワードプレス サイトが表示されます。

サブディレクトリ var/www/cakephp に CakePHP を配置しました。www.geekderek.com/cakephp にアクセスして、CakePHP アプリを表示できるようにしたいと考えています。

ただし、現在、この URL は「コンテンツが見つかりません」という Wordpress ページを返すだけです。

この問題は、ルート ディレクトリの .htaccess を変更することで解決できると思います。ここに私の .htaccess があります: http://pastebin.com/sXJTRstB

ご覧のとおり、次の行をデフォルトの WP .htaccess ファイルに追加しました。

RewriteRule    ^cakephp(/(.*))?$ cakephp/app/webroot/$1    [QSA,L]

ただし、何らかの理由でこれが機能しないようです。

誰が何が間違っているのか教えてください?? どうもありがとう!

4

3 に答える 3

2

私のケーキアプリがサブディレクトリにあるという同様のセットアップがあり、ルート .htaccess には次の書き換えルールがあります。

RewriteRule ^cakephp/(.*)$ /cakephp/$1 [L,QSA]

残りはすべて、通常の cakephp セットアップで処理されます。

私の /cakephp/app/webroot/.htaccess:

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

これがあなたにとってもうまくいくことを願っています:)

于 2012-10-18T09:47:58.220 に答える
0

thanatの答えはほとんどうまくいきました。RewriteBaseを編集して読み取る必要がありました

RewriteBase /cakephp

そして、apache confがルートディレクトリが以前のオプションを上書きできるようにしていることを確認してください

<Directory "/my/root/dir">
AllowOverride All
</Directory>

しかし、再び、私のアプリディレクトリはApacheによって設定されたDocumentRootの外にあります。そしてcakephpディレクトリは実際にはウェブルートそのものです。私のディレクトリ構造は次のとおりです

/my/root
/my/root/app  #cake's app dir without webroot
/my/root/dir  #apache DocumentRoot (your wordpress is here)
/my/root/dir/cakephp  #cake's webroot

また、アプリとケーキのライブラリディレクトリが/my/root/dir/cakephp/index.phpどこにあるかを確認できるように編集してください。

于 2013-10-26T12:50:23.263 に答える