【问题标题】:Use another domain for a part of URL in CI在 CI 中使用另一个域作为 URL 的一部分
【发布时间】:2013-04-16 13:50:13
【问题描述】:

我想通过CI做一个网站,有些人有这样的个人页面

main-domain.com/index.php/sites/site_id/other-controller...

并且我想为拥有此 site_id 的每个人分配一个域,并且访问者按这样的域工作:

sub-site-domain.com/other-controller...

(只需替换 main-domain.com/index.php/sites/site_id/ to sub-site-domain.com/ ) 我也想添加域服务器,但每个域都使用核心文件和数据库来加载数据。 但使用他们自己的域进行内部链接。 我怎样才能做到这一点? 如何将域添加到服务器以及配置是什么? 我可以在子站点域中使用主域的session 吗? 拥有这样一个网站的最佳解决方案是什么?

【问题讨论】:

  • “我该怎么做?”您必须在您的应用程序上寻找检测子域(使用 Hooks 或 Base Controller)并更改 base_url 配置以将此子域添加到您的 URL。

标签: php codeigniter dns cross-domain codeigniter-url


【解决方案1】:

您可以在配置中设置动态 base_url $config['base_url'] = 'http://'.$_SERVER['HTTP_HOST'].'/'; 或类似的东西

【讨论】:

  • 我发现了,我应该将所有域保存在 db 中,停放所有域并将基本 url 留空,然后在控制器中检查基本 url 是什么并专门为该基本 url 加载页面。
  • 但是我可以跨域使用会话吗?我的意思是在主域中保存 CI 会话并在访问者在其他域中时使用它?
  • 你可以设置 $config['cookie_domain'] = "";并且会话可以“跨域”
  • 空白 base_url 是个好主意......从 $_SERVER['HTTP_HOST']
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-17
  • 2020-06-28
  • 1970-01-01
  • 2021-10-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多