2014-12-03 100 views
0

我目前在一臺Apache服務器上一起使用wordpress和cakephp。 CakePHP安裝在根目錄下,wordpress在子目錄2中。我可以通過訪問http://domain.com/blog/訪問wordpress,這很好。我想將它移到cakephp的子文件夾/虛擬目錄中。所以URL將是http://domain.com/subfolder/blogcakephp2與子文件夾中的wordpress

子文件夾是cakephp虛擬目錄不存在。我試圖通過向cakephp中的主htaccess文件添加一個條件來忽略此(請參見下文)。它似乎沒有工作。這可能會忽略一個虛擬目錄並傳遞給wordpress。由於cakephp將不再能夠處理請求,創建一個實際的文件夾將會破壞網站。

RewriteCond %{REQUEST_URI} !^/subfolder/blog/(.*) 

我能夠使用: Can I disable rewrite for specific directory?

# ignore application_test for any rewrites 
RewriteRule ^subfolder(/|$) - [NC,L] 

回答

0

我能夠借道htaccess以及旁路CakePHP的所有WordPress的請求。我在/ app/webroot/subfolder2中安裝了wordpress,並正常工作。

然後,我在應用webroot規則上面添加了這條規則來處理路由。在Cake有機會訪問它之前,Htaccess會攔截wordpress的規則。子文件夾2不是任何虛擬目錄的一部分,並且是webroot中的實際目錄。但子文件夾是蛋糕中的虛擬目錄。

# route to wordpress instead of cakephp 
RewriteRule ^subfolder/blog(.*)$ /subfolder2/$1 [NC,L] 

# route to cakephp 
RewriteRule ^$ app/webroot/ [L] 
RewriteRule (.*) app/webroot/$1 [L] 

我然後手動更新SITE_URL,並在blog_options表家用領域中的MySQL,使其能以新的虛擬目錄路徑。它似乎工作。