【问题标题】:HMVC with Codeigniter using MX is not working in subdomain带有使用 MX 的 Codeigniter 的 HMVC 在子域中不起作用
【发布时间】:2017-10-21 19:39:34
【问题描述】:

我正在将 HMVC 与 Codeigniter-3.x 一起使用,并将 MX 用于后端和前端。整个项目都在一个子域中。 前端在本地主机和在线域中运行良好。 在 localhost 后端也运行良好。 但后端不适用于在线域。 模块中的 url 是 404。

我曾经将基本 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 loader 有路由解决方案吗? 我的项目结构在这里。


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
                      /....

【问题讨论】:

  • 尝试从设置base_url 中删除SCRIPT_NAME 行,但还要在HTTP_HOST 之后设置斜杠。
  • 这也行不通。即使我使用静态 base_url 像 $config['base_url'] = "example.com/subdomain/backend";对于我的后端项目。同样的麻烦。
  • base_url 也需要方案(即http://example.com)。
  • 带有斜杠http://example.com/.
  • 我不知道你想给我什么建议。尽管我将两者都用作基本网址;它对我不起作用。无论如何谢谢你...

标签: codeigniter subdomain hmvc codeigniter-hmvc


【解决方案1】:

我认为使用单个应用程序文件夹是一个好习惯。

对于后端,您可以使用 Backend/Admin 创建一个模块名称并保留您的控制器。希望它能正常工作...

【讨论】:

  • 这是一个很大的问题,我必须将前端和后端分开。每个项目都有不同的模块。顺便说一句,问题解决了。这是 php 版本和模块名称大小写问题。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多