2017-10-21 106 views
1

我使用HMVC和Codeigniter-3.x,使用MX作爲後端和前端。整個項目都在一個子域中。 前端在localhost和在線域名都能正常工作。 在本地主機後端也運行良好。 但後端不在在線域上工作。 鏈接從模塊404使用MX的HMVC和使用MX的Codeigniter無法在子域中工作

我已經用於定義基本URL作爲

$config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http"); 
$config['base_url'] .= "://".$_SERVER['HTTP_HOST']; 
$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']); 

是否有HMVC裝載機任何路由溶液? 我的項目結構在這裏。


mydomain.com 
    /subdomain 
      /system 
      /asset 
      /application 
       /controllers 
       /models 
       /views 
       /modules 
        /module_1 
          /controllers 
          /models 
          /views 
       /third_party 
        /MX 
       /core 
       /helper 
       /config 
       /.... 
      /backend 
       /asset 
       /application 
         /controllers 
         /models 
         /views 
         /modules 
          /module_1 
            /controllers 
            /models 
            /views 
         /third_party 
          /MX 
         /core 
         /helper 
         /config 
         /.... 
+0

嘗試從'base_url'設置中刪除'SCRIPT_NAME'行,同時在'HTTP_HOST'之後設置尾部斜槓。 – Tpojka

+0

這也不起作用。即使我使用靜態base_url像$ config ['base_url'] =「https://example.com/subdomain/backend」;爲我的後端項目。同樣的麻煩。 –

+0

'base_url'也需要方案(即'http:// example.com')。 – Tpojka

回答

0

我認爲這是使用單一的應用程序文件夾中的良好做法。

對於後端,您可以創建一個帶有後端/管理的模塊名稱並保留它們的控制器。希望它能正常工作...

+0

它是一個巨大的問題,我必須分開作爲前端和後端。每個項目都有不同的模塊。順便解決問題。這是PHP版本和模塊名稱的案例問題。謝謝 –