gpt4 book ai didi

php - 使用 CodeIgniter 的通配符子域路由

转载 作者:可可西里 更新时间:2023-10-31 22:46:46 24 4
gpt4 key购买 nike

我一直在努力思考这个概念以及如何正确安排路线,但我很难做到这一点。

我正在接受我的应用程序的所有域和子域,但问题在于:

例子:

john.myapp.com/foo

它应该路由到 user Controller 中的 foo 函数,而不是调用名为 foo 的 Controller 。

所以:

john.myapp.com/foo -> myapp.com/user/foo
john.myapp.com/foo/bar -> myapp.com/user/foo/bar
someotherdomain.com/foo/bar -> myapp.com/user/foo/bar
myapp.com/foo -> the controller: foo

但是这个路由应该只适用于子域和其他域,而不是myapp.com

最佳答案

Codeigniter 不支持涉及域的路由作为其默认功能的一部分。

如果您访问了 www.example.com/controller/method,路由器只会解释 /controller/method 部分并忽略之前的任何内容。

这意味着要实现您正在尝试的目标,您需要使用 .htaccess 将子域路由到应用程序。

RewriteCond %{HTTP_HOST} ^((?!www\.)(?!myapp\.com)[^\.]+)\.
RewriteRule ^(.*)$ /index.php?/user/%1/$1 [L]

这将发送所有请求,例如

subdomain.example.com/controller/method 转到 example.com/index.php/user/controller/method

这将允许您使用标准路由功能根据子域进行路由。

关于php - 使用 CodeIgniter 的通配符子域路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8850615/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com