2017-02-24 80 views
0

我已經將Codeigniter安裝到我的Wordpress目錄中名爲/ portal的目錄中。如果我訪問www.mydomain.com/portal,我可以看到我的默認控制器/視圖,這是一個登錄頁面,但是如果我嘗試登錄,我會在www.mydomain.com/auth/login的控制檯中收到404錯誤。在Wordpress目錄中訪問Codeigniter文件夾

這裏是我的WordPress的.htaccess

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

我的笨主要.htaccess文件

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    # Send request via index.php 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php/$1 [L] 
</IfModule> 

我如何得到這個工作?

笨3,WordPress的4.6.3,PHP 7

回答

0

1)的WordPress的.htaccess

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

2)笨的.htaccess

RewriteEngine on 
RewriteCond $1 !^(index\.php|resources|robots\.txt) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php/$1 [L,QSA] 

3),並在你的配置更改文件ie portal/application/config/config.php - $ config ['base_url']

$config['base_url'] = '/portal'; 

對我而言,你會嘗試這個。

+0

不,沒有按沒有工作,再次,我可以看到前端控制器和視圖,但我不能通過它,這是域名http://www.thegoldsquare.com/portal/嘗試登錄任何值 – poptartgun

+0

如果你看看JavaScript控制檯你會看到它返回一個404錯誤,但我的控制器是身份驗證,我有AP ublic方法登錄,所以portal/auth/login是正確的......我也有這個相同的代碼在/ portal目錄中的不同域上運行就好了。那個只是沒有WordPress的。 – poptartgun

1

你只需要在index.php後面添加一個問號,像這樣:

RewriteRule ^(.*)$ index.php?/$1 [L] 

,所以該完整的東西(在你的笨.htaccess文件是這樣的:

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?/$1 [L] 
</IfModule> 
+0

工作正常!有用! – poptartgun