2016-03-17 37 views
0

所以,我有一個我已經寫在Yii2中的應用程序。我現在需要在當前託管Wordpress的Web服務器上安裝它。目錄看起來是這樣的:.htaccess控制Wordpress和Yii2應用程序

/ 
    /customer-account 
     /web (Yii application lives here) 
    /gswp  (Wordpress application lives here) 
    ... 

在根目錄下的.htaccess文件目前看起來是這樣的:

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
#RewriteRule ^$ customer-account/web/$1 [L] 
#RewriteRule ^(.*) customer-account/web/$1 [L] 

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

值得指出的是,WP網站工作正常。另外,Yii2使用了漂亮的URL,所以它在/ web中有自己的.htaccess魔法。所有對WP的請求都將進入其目錄。打電話給/客戶帳戶/網站,不打實際目錄,正在生成WP 404頁面。我已經成功地將這個項目放在一個普通的舊PHP應用程序下。你可以從上面看到,我已經採取了一些刺激措施來使魔法發生,但迄今爲止沒有喜悅。

我只是想要所有打到/ customer-account/web/*的請求傳遞給web,這樣就可以完成剩下的工作。任何援助將不勝感激!

回答

0

這裏是我結束了在根目錄中去,希望這將幫助別人:

RewriteEngine On 

# Yii 
RewriteCond %{REQUEST_URI} /customer-account/web 
RewriteRule .* customer-account/web/index.php [NC,L,QSA] 

# Wordpress 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule .* index.php [L] 

而在Yii2目錄/客戶帳戶/網絡:

RewriteEngine On 

RewriteBase /customer-account/web/ 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . index.php 
相關問題