Lravel 5.1.x单独的公用文件夹和http名称空间,用于单独的子域

博士 努鲁伊斯兰教|

我的文件夹结构如下所示

app
    Console
    Events
    Exceptions
    Http
        Classroom
            Controllers
            Middleware
            Requests
            Kernel.php
        Default
            Controllers
            Middleware
            Requests
            Kernel.php
        Homework
            Controllers
            Middleware
            Requests
            Kernel.php
        routes-classroom.php
        routes-default.php
        routes-homework.php
        routes.php
    Jobs
    Listeners
    Policies
    Providers
    User.php
bootstrap
config
database
public
public_classroom
    bootstrap
        cache
        app.php
        autoload.php
public_homework
    bootstrap
        cache
        app.php
        autoload.php
resources
storage
tests
vendor

我的vhsot像:

cr.classroom.loc => public_classroom
hw.classroom.loc => public_homewrok

我想访问cr.classroom.loc时将访问Http / Classroom / controller,并且hw.classroom.loc也会发生相同的情况。我已经修复了相应的命名空间,并运行了composer dump-autoload,PHP artisan进行了明确编译,但没有任何帮助。显示以下错误:

/var/www/classroom/vendor/laravel/framework/src/Illuminate/Container/Container.php:741中未捕获的异常“ Re​​flectionException”,消息为“类日志不存在”

博士 努鲁伊斯兰教|

问题出在路由服务提供商中。提供者无法解决请求。将以下代码添加到提供程序。

protected $ar_subdomain_namespaces = [
    '' => 'Home',
    'cr' => 'Classroom',
    'hw' => 'Homework',
    'lms' => 'Lms',
    'admin' => 'Admin',
    ...
];

public function map(Router $router) {
    $this->mapWebRoutes($router);
}

protected function mapWebRoutes(Router $router) {
    if (isset($_SERVER['HTTP_HOST'])) {
        $fqdn = $_SERVER['HTTP_HOST'];
        $ar_host = explode(".", $fqdn);
    }

    $sub_domain = ( isset($ar_host) && count($ar_host) > 2 && $ar_host[0] !== 'www' ) ? $ar_host[0] : '';
    list($namespace, $route_path) = $this->getNamepaceAndRouteBySubdomain($sub_domain);

    $router->route_file_path = $route_path;
    $router->group([
        'namespace' => $namespace, 'middleware' => 'web',
            ], function ($router) {
        require app_path($router->route_file_path);
    });
}

protected function getNamepaceAndRouteBySubdomain($sub_domain = '') {
    $namespace = '\Controllers';
    $route_path = 'Http/Home/routes.php';

    if (array_key_exists($sub_domain, $this->ar_subdomain_namespaces)) {
        $route_path = "Http/{$this->ar_subdomain_namespaces[$sub_domain]}/routes.php";
        $namespace = "{$this->namespace}\\{$this->ar_subdomain_namespaces[$sub_domain]}{$namespace}";
    }

    return [$namespace, $route_path];
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Laravel 5中使用输入名称创建存储文件夹和子文件夹

来自分类Dev

单独的CodeIgniter公用文件夹

来自分类Dev

如何在Android中创建单独的值文件夹Sony Xperia Z1

来自分类Dev

将4个系统文件夹移动到1个单独的分区

来自分类Dev

关于Javascript中的“ 5” -1和“ 5” +1(加号和减号)

来自分类Dev

使用 for 循环以 -1、0 和 1 等比例填充 R 中的 5*5 矩阵

来自分类Dev

ValueError:形状(5,5)和(20,)不对齐:5(dim 1)!= 20(dim 0)

来自分类Dev

如何在提交按钮时将数据推送到sapui5中的单独的json模型文件夹中

来自分类Dev

将公用数据文件夹用于两个用户,而不是单独的用户

来自分类Dev

1:1和1:许多加入MVC5模型

来自分类Dev

Lravel 5.1如何通过from查找数据库记录?

来自分类Dev

了解“ 5 1”的类型

来自分类Dev

Laravel5响应“ HTTP状态代码“ 1”无效。”

来自分类Dev

如何在Laravel 5中将公用文件夹更改为public_html

来自分类Dev

HTML5 srcset:是否必须使用1x?

来自分类Dev

md5 / sha1散列大文件

来自分类Dev

在 5M 上移动 1M 的文件

来自分类Dev

file(1)和magic(5):描述其他格式

来自分类Dev

欧拉计划#1:3和5的倍数

来自分类Dev

map(lambda x:int(x,16)/ 256.0,[color [1:3],color [3:5],color [5:7]])

来自分类Dev

numpy:形状为(5,1)和(5,)的向量有什么区别?

来自分类Dev

如何在列中的值1之前定位5行和之后定位5行

来自分类Dev

Angular 1.x templateCache放置来自单独文件的内容

来自分类Dev

dplyr ::对x1:x5列求和,不包括名称==列y的列

来自分类Dev

重定向子文件夹并在之后保持相同的/ forum和url $ 1

来自分类Dev

删除 2 级子文件夹但保留 1 级子文件夹

来自分类Dev

C11编译。翻译#1和#5的阶段。通用字符名称

来自分类Dev

ASP MVC 5 FilterConfig用于子文件夹中具有视图的自定义异常

来自分类Dev

Bash:使用文件夹名称重命名文件(每个文件夹 1 个)

Related 相关文章

  1. 1

    如何在Laravel 5中使用输入名称创建存储文件夹和子文件夹

  2. 2

    单独的CodeIgniter公用文件夹

  3. 3

    如何在Android中创建单独的值文件夹Sony Xperia Z1

  4. 4

    将4个系统文件夹移动到1个单独的分区

  5. 5

    关于Javascript中的“ 5” -1和“ 5” +1(加号和减号)

  6. 6

    使用 for 循环以 -1、0 和 1 等比例填充 R 中的 5*5 矩阵

  7. 7

    ValueError:形状(5,5)和(20,)不对齐:5(dim 1)!= 20(dim 0)

  8. 8

    如何在提交按钮时将数据推送到sapui5中的单独的json模型文件夹中

  9. 9

    将公用数据文件夹用于两个用户,而不是单独的用户

  10. 10

    1:1和1:许多加入MVC5模型

  11. 11

    Lravel 5.1如何通过from查找数据库记录?

  12. 12

    了解“ 5 1”的类型

  13. 13

    Laravel5响应“ HTTP状态代码“ 1”无效。”

  14. 14

    如何在Laravel 5中将公用文件夹更改为public_html

  15. 15

    HTML5 srcset:是否必须使用1x?

  16. 16

    md5 / sha1散列大文件

  17. 17

    在 5M 上移动 1M 的文件

  18. 18

    file(1)和magic(5):描述其他格式

  19. 19

    欧拉计划#1:3和5的倍数

  20. 20

    map(lambda x:int(x,16)/ 256.0,[color [1:3],color [3:5],color [5:7]])

  21. 21

    numpy:形状为(5,1)和(5,)的向量有什么区别?

  22. 22

    如何在列中的值1之前定位5行和之后定位5行

  23. 23

    Angular 1.x templateCache放置来自单独文件的内容

  24. 24

    dplyr ::对x1:x5列求和,不包括名称==列y的列

  25. 25

    重定向子文件夹并在之后保持相同的/ forum和url $ 1

  26. 26

    删除 2 级子文件夹但保留 1 级子文件夹

  27. 27

    C11编译。翻译#1和#5的阶段。通用字符名称

  28. 28

    ASP MVC 5 FilterConfig用于子文件夹中具有视图的自定义异常

  29. 29

    Bash:使用文件夹名称重命名文件(每个文件夹 1 个)

热门标签

归档