繁体   English   中英

Laravel:如果与公用文件夹子目录相同,则定义路由

[英]Laravel: define the route if it is same as public folder subdirectory

我有admin的子文件夹public文件夹,但我想确定具体的响应mywebsite.loc/admin 当前,如果输入mywebsite.loc/admin ,它将是下一个响应:

在此处输入图片说明

但是我有admin的路由定义:

Route::group(['prefix' => 'admin', 'middleware' => 'auth'], function(){

    Route::get('/', [
        'as' => 'AdminTop',
        'uses' => //Admin\AdminController@renderTopPage'
        function(){ 
            dd('ok');
        }
    ]);       
});

我该如何运作?

如果您在公共场所创建任何文件夹,并且想要将此文件夹用作路由,则需要添加index.php,这对于将根目录理解为该文件夹很有用。

例如,您在public / admin中创建一个文件夹,然后将public / index.php文件复制到admin文件夹中,并在此index.php文件中更改两行

require __DIR__.'/../bootstrap/autoload.php';

require __DIR__.'/../../bootstrap/autoload.php';

$app = require_once __DIR__.'/../bootstrap/app.php';

$app = require_once __DIR__.'/../../bootstrap/app.php';

我认为这对您的要求有所帮助。

对不起,我的英语不好

Laravel具有默认的.htaccess以及正确的规则:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

这意味着如果不是目录(!-d)而不是文件(!-f),请路由至index.php(否则将命中文件/目录)

尝试删除以!-d结尾的行,但我建议您更改目录名,因为这在某些时候会成为您的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM