mirror of
https://gitee.com/fastadminnet/framework.git
synced 2026-07-01 20:52:48 +08:00
改进子域名路由
This commit is contained in:
@@ -34,32 +34,34 @@ class Route
|
||||
// 添加URL映射规则
|
||||
public static function map($map, $route = '')
|
||||
{
|
||||
self::setting('map', $map, $route);
|
||||
return self::setting('map', $map, $route);
|
||||
}
|
||||
|
||||
// 添加变量规则
|
||||
public static function pattern($name, $rule = '')
|
||||
{
|
||||
self::setting('pattern', $name, $rule);
|
||||
return self::setting('pattern', $name, $rule);
|
||||
}
|
||||
|
||||
// 添加路由别名
|
||||
public static function alias($name, $rule = '')
|
||||
{
|
||||
self::setting('alias', $name, $rule);
|
||||
return self::setting('alias', $name, $rule);
|
||||
}
|
||||
|
||||
// 添加子域名部署规则
|
||||
public static function domain($domain, $rule = '')
|
||||
{
|
||||
self::setting('domain', $domain, $rule);
|
||||
return self::setting('domain', $domain, $rule);
|
||||
}
|
||||
|
||||
// 属性设置
|
||||
private static function setting($var, $name, $value = '')
|
||||
private static function setting($var, $name = '', $value = '')
|
||||
{
|
||||
if (is_array($name)) {
|
||||
self::${$var} = array_merge(self::${$var}, $name);
|
||||
} elseif (empty($name)) {
|
||||
return self::${$var};
|
||||
} else {
|
||||
self::${$var}[$name] = $value;
|
||||
}
|
||||
|
||||
@@ -137,8 +137,8 @@ class Url
|
||||
if (Config::get('url_domain_deploy')) {
|
||||
// 开启子域名部署
|
||||
$domain = 'localhost' == $domain ? 'localhost' : 'www' . strstr($_SERVER['HTTP_HOST'], '.');
|
||||
// '子域名'=>array('项目[/分组]');
|
||||
foreach (Config::get('url_domain_rules') as $key => $rule) {
|
||||
// '子域名'=>['模块[/控制器/操作]'];
|
||||
foreach (Route::domain() as $key => $rule) {
|
||||
$rule = is_array($rule) ? $rule[0] : $rule;
|
||||
if (false === strpos($key, '*') && 0 === strpos($url, $rule)) {
|
||||
$domain = $key . strstr($domain, '.'); // 生成对应子域名
|
||||
|
||||
Reference in New Issue
Block a user