Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 更改Laravel 5.2中的登录/注册URL_Php_Laravel - Fatal编程技术网

Php 更改Laravel 5.2中的登录/注册URL

Php 更改Laravel 5.2中的登录/注册URL,php,laravel,Php,Laravel,我目前正在写一个应用程序,它只有公司员工的账户,没有固定的网站访问者。因此,我希望将与网站“管理”区域相关的URL保留在/admin URL下,这意味着将/login更改为/admin/login,将/register更改为/admin/register 然而,我不知道如何在Laravel5.2中更改登录和注册URL,在以前的版本中,似乎只需添加protected$loginPath='/admin/login'到Auth\AuthController但是,将其添加到我的AuthControll

我目前正在写一个应用程序,它只有公司员工的账户,没有固定的网站访问者。因此,我希望将与网站“管理”区域相关的URL保留在/admin URL下,这意味着将
/login
更改为
/admin/login
,将
/register
更改为
/admin/register

然而,我不知道如何在Laravel5.2中更改登录和注册URL,在以前的版本中,似乎只需添加
protected$loginPath='/admin/login'
Auth\AuthController
但是,将其添加到我的
AuthController
中时,这没有什么区别

下面是php artisan route的输出:list

+--------+----------+-------------------------+------+-----------------------------------------------------------
| Domain | Method   | URI                     | Name | Action
+--------+----------+-------------------------+------+-----------------------------------------------------------
|        | GET|HEAD | /                       |      | App\Http\Controllers\PageController@index
|        | GET|HEAD | admin                   |      | App\Http\Controllers\AdminPageController@index
|        | GET|HEAD | admin/profile           |      | App\Http\Controllers\AdminPageController@profile
|        | GET|HEAD | login                   |      | App\Http\Controllers\Auth\AuthController@showLoginForm
|        | POST     | login                   |      | App\Http\Controllers\Auth\AuthController@login
|        | GET|HEAD | logout                  |      | App\Http\Controllers\Auth\AuthController@logout
|        | POST     | password/email          |      | App\Http\Controllers\Auth\PasswordController@sendResetLink
|        | POST     | password/reset          |      | App\Http\Controllers\Auth\PasswordController@reset
|        | GET|HEAD | password/reset/{token?} |      | App\Http\Controllers\Auth\PasswordController@showResetForm
|        | GET|HEAD | register                |      | App\Http\Controllers\Auth\AuthController@showRegistrationF
|        | POST     | register                |      | App\Http\Controllers\Auth\AuthController@register
+--------+----------+-------------------------+------+-----------------------------------------------------------

在L5.2中,所有身份验证路由都分组在一个名为
route::auth()
的路由中

如果搜索符号
auth()
,则可以看到包含所有路由链接的auth()函数

检查此文件:
illumb\Routing\Router
以获取
auth()
函数

但我不确定在这里改变它是否是一种好的做法

编辑:

因此,如果需要更改默认的身份验证路由,请包括所有路由 在
routes.php
文件中,根据需要更改uri

要获得参考:

    // Authentication Routes...
    Route::get('login', 'Auth\AuthController@showLoginForm');
    Route::post('login', 'Auth\AuthController@login');
    Route::get('logout', 'Auth\AuthController@logout');

    // Registration Routes...
    Route::get('register', 'Auth\AuthController@showRegistrationForm');
    Route::post('register', 'Auth\AuthController@register');

    // Password Reset Routes...
    Route::get('password/reset/{token?}', 'Auth\PasswordController@showResetForm');
    Route::post('password/email', 'Auth\PasswordController@sendResetLinkEmail');
    Route::post('password/reset', 'Auth\PasswordController@reset');

使用命名路由,而不是使用
Route::auth()


您可以在带前缀的组内调用
Route::auth()

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

更改供应商文件夹中的任何内容都是不好的做法,尤其是因为在运行composer update时,这些内容将被覆盖。

所以更改
Auth::routes()
on
routes/web.php
to


vendor/laravel/ui/src/AuthRouteMethods.php中,您可以自定义URL。

谢谢。重写这些值的最佳实践是什么?恐怕您必须在这里更改它。但请等待他人确认。更改
供应商
文件夹中的任何内容都是不好的做法,尤其是因为在运行
编写器更新
时,这些内容将被覆盖。只需在路由文件中定义路由。
Route::group(['prefix' => 'admin'], function() {
    Route::auth();
});
    // Authentication Routes...
    $this->get('login', 'Auth\LoginController@showLoginForm')->name('login');
    $this->post('login', 'Auth\LoginController@login');
    $this->post('logout', 'Auth\LoginController@logout')->name('logout');

    // Registration Routes...
    $this->get('registers', 'Auth\RegisterController@showRegistrationForm');
    $this->post('registers', 'Auth\RegisterController@register');

    // Password Reset Routes...
    $this->get('password/reset', 'Auth\ForgotPasswordController@showLinkRequestForm');
    $this->post('password/email', 'Auth\ForgotPasswordController@sendResetLinkEmail');
    $this->get('password/reset/{token}', 'Auth\ResetPasswordController@showResetForm');
    $this->post('password/reset', 'Auth\ResetPasswordController@reset');