{"id":853,"date":"2025-06-12T01:11:16","date_gmt":"2025-06-11T17:11:16","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/php\/php-application-manual\/laravel\/853.html"},"modified":"2025-06-12T01:11:16","modified_gmt":"2025-06-11T17:11:16","slug":"laravel%ef%bc%9a%e5%a6%82%e4%bd%95%e6%b3%a8%e9%94%80%e7%94%a8%e6%88%b7%ef%bc%88%e5%9f%ba%e7%a1%80%e4%b8%8e%e9%ab%98%e7%ba%a7%e6%8a%80%e5%b7%a7%ef%bc%89","status":"publish","type":"my1js","link":"https:\/\/www.zhaozhao123.cn\/php\/my1js\/853.html","title":{"rendered":"Laravel\uff1a\u5982\u4f55\u6ce8\u9500\u7528\u6237\uff08\u57fa\u7840\u4e0e\u9ad8\u7ea7\u6280\u5de7\uff09"},"content":{"rendered":"<div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--1\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/dyA-1-400x300.jpg\" alt=\"Bug&#32534;&#35793;&#29422;\" class=\"wp-image-1842\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">Bug&#32534;&#35793;&#29422;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>&#22909;&#30340;&#65292;&#19979;&#38754;&#25105;&#23558;&#35814;&#32454;&#35762;&#35299;Laravel&#20013;&#22914;&#20309;&#27880;&#38144;&#29992;&#25143;&#65292;&#21253;&#25324;&#22522;&#30784;&#25805;&#20316;&#21644;&#19968;&#20123;&#39640;&#32423;&#25216;&#24039;&#12290;<\/p>\n<h3>&#22522;&#30784;&#25805;&#20316;<\/h3>\n<ol>\n<li>\n<p><strong>&#23548;&#20837;&#24517;&#35201;&#30340;&#31867;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-php\">use IlluminateSupportFacadesAuth;<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>&#20351;&#29992;<code>Auth::logout()<\/code>&#26041;&#27861;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-php\">Auth::logout();<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>&#37325;&#23450;&#21521;&#21040;&#30331;&#24405;&#39029;&#38754;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-php\">return redirect()-&gt;route('login');<\/code><\/pre>\n<\/li>\n<\/ol>\n<h3>&#31034;&#20363;&#20195;&#30721;<\/h3>\n<pre><code class=\"language-php\">\/\/ &#23548;&#20837;&#24517;&#35201;&#30340;&#31867;\nuse IlluminateSupportFacadesAuth;\n\npublic function logout(Request $request)\n{\n    \/\/ &#20351;&#29992;Auth::logout()&#26041;&#27861;&#27880;&#38144;&#29992;&#25143;\n    Auth::logout();\n\n    \/\/ &#37325;&#23450;&#21521;&#21040;&#30331;&#24405;&#39029;&#38754;\n    return redirect()-&gt;route('login');\n}<\/code><\/pre>\n<h3>&#39640;&#32423;&#25216;&#24039;<\/h3>\n<ol>\n<li>\n<p><strong>&#31105;&#29992;CSRF&#20445;&#25252;<\/strong>&#65288;&#20165;&#38480;&#20110;&#24320;&#21457;&#29615;&#22659;&#65289;&#65306;\n&#22312;&#29983;&#20135;&#29615;&#22659;&#20013;&#65292;&#24212;&#35813;&#31105;&#29992;CSRF&#20445;&#25252;&#20197;&#38450;&#27490;XSS&#25915;&#20987;&#12290;<\/p>\n<pre><code class=\"language-php\">\/\/ &#22312;routes\/web.php&#20013;&#28155;&#21152;&#20197;&#19979;&#37197;&#32622;\nRoute::post('\/logout', [AppHttpControllersAuthLogoutController::class, 'index'])-&gt;name('logout')-&gt;middleware('guest');<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>&#20351;&#29992;&#20013;&#38388;&#20214;<\/strong>&#65306;\n&#21487;&#20197;&#21019;&#24314;&#33258;&#23450;&#20041;&#30340;&#20013;&#38388;&#20214;&#26469;&#22788;&#29702;&#27880;&#38144;&#36923;&#36753;&#12290;<\/p>\n<pre><code class=\"language-php\">\/\/ &#21019;&#24314;&#19968;&#20010;&#20013;&#38388;&#20214;&#25991;&#20214;: app\/Http\/Middleware\/Logout.php\nnamespace AppHttpMiddleware;\n\nuse Closure;\nuse IlluminateSupportFacadesAuth;\n\nclass Logout\n{\n   public function handle($request, Closure $next)\n   {\n       if (Auth::check()) {\n           Auth::logout();\n       }\n       return $next($request);\n   }\n}\n\n\/\/ &#22312;app\/http\/routes\/web.php&#20013;&#27880;&#20876;&#20013;&#38388;&#20214;\nRoute::get('\/logout', [AppHttpControllersAuthLogoutController::class, 'index'])-&gt;name('logout')-&gt;middleware('auth');<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>&#36890;&#36807;&#20197;&#19978;&#27493;&#39588;&#65292;&#20320;&#21487;&#20197;&#36731;&#26494;&#22320;&#22312;Laravel&#39033;&#30446;&#20013;&#23454;&#29616;&#29992;&#25143;&#27880;&#38144;&#21151;&#33021;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--2\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/zp-400x300.jpg\" alt=\"&#40657;&#26495;Bug&#35762;&#24072;\" class=\"wp-image-1849\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#40657;&#26495;Bug&#35762;&#24072;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<body><h2>&#20171;&#32461;<\/h2><p>&#35748;&#35777;&#26159;&#20219;&#20309;web&#24212;&#29992;&#31243;&#24207;&#20013;&#30340;&#19968;&#20010;&#20851;&#38190;&#37096;&#20998;&#65292;&#33021;&#22815;&#25511;&#21046;&#29992;&#25143;&#30340;&#35748;&#35777;&#29366;&#24577;&#21516;&#26679;&#37325;&#35201;&#12290;&#22312;Laravel&#20013;&#65292;auth&#26694;&#26550;&#25552;&#20379;&#20102;&#26377;&#25928;&#30331;&#24405;&#21644;&#27880;&#38144;&#29992;&#25143;&#25152;&#38656;&#30340;&#20840;&#37096;&#21151;&#33021;&#12290;&#26412;&#25351;&#21335;&#23558;&#24102;&#20320;&#20102;&#35299;&#22914;&#20309;&#20351;&#29992;&#22810;&#31181;&#26041;&#27861;&#21644;&#22330;&#26223;&#20174;Laravel&#24212;&#29992;&#20013;&#27880;&#38144;&#29992;&#25143;&#30340;&#36807;&#31243;&#12290;<\/p><h2>&#20351;&#29992;Auth Facade<\/h2><p>&#26368;&#31616;&#21333;&#30340;&#36864;&#20986;&#29992;&#25143;&#30340;&#26041;&#27861;&#26159;&#22312;Laravel&#20013;&#20351;&#29992;Auth Facade&#65306;<\/p><pre><code>use IlluminateSupportFacadesAuth;\n\n\/\/ Log the user out\nAuth::logout();\n<\/code><\/pre><p>&#24403;&#36825;&#27573;&#20195;&#30721;&#25191;&#34892;&#26102;&#65292;Laravel &#20250;&#38144;&#27585;&#24403;&#21069;&#29992;&#25143;&#30340;&#20250;&#35805;&#24182;&#23558;&#20854;&#20174;&#24212;&#29992;&#31243;&#24207;&#20013;&#27880;&#38144;&#12290;&#24744;&#21487;&#20197;&#26681;&#25454;&#38656;&#35201;&#23558;&#20854;&#25918;&#32622;&#22312;&#20219;&#20309;&#25511;&#21046;&#22120;&#26041;&#27861;&#20013;&#12290;<\/p><h3>&#36864;&#20986;&#26041;&#27861;&#22312;&#25511;&#21046;&#22120;&#20013;&#30340;&#31034;&#20363;<\/h3><pre><code>public function logout(Request $request)\n{\n    \/\/ Get the current user's information\n    $user = Auth::user();\n\n    \/\/ Log the user out\n    Auth::logout();\n\n    \/\/ Optionally, you can perform a redirect after logging out\n    return redirect('\/login')-&gt;with('status', 'You have been successfully logged out.');\n}\n<\/code><\/pre><h2>&#22312;&#20854;&#20182;&#35774;&#22791;&#19978;&#26080;&#25928;&#21270;&#29992;&#25143;&#20250;&#35805;<\/h2><p>&#26377;&#26102;&#20505;&#65292;&#24744;&#21487;&#33021;&#24076;&#26395;&#22312;&#25152;&#26377;&#35774;&#22791;&#19978;&#26080;&#25928;&#29992;&#25143;&#20250;&#35805;&#12290;&#22914;&#26524;&#24576;&#30097;&#29992;&#25143;&#30340;&#36134;&#25143;&#24050;&#34987;&#30772;&#35299;&#65292;&#35813;&#21151;&#33021;&#29305;&#21035;&#26377;&#29992;&#12290;<\/p><pre><code>use IlluminateSupportFacadesAuth;\n\npublic function logoutEverywhere(Request $request)\n{\n    \/\/ Get the authenticated user\n    $user = Auth::user();\n\n    \/\/ Log the user out from all devices except the current one\n    $user-&gt;logoutOtherDevices(mixed $password);\n\n    return redirect('\/')-&gt;with('status', 'Logged out from all devices.');\n}\n<\/code><\/pre><p>&#24744;&#38656;&#35201;&#30830;&#20445;&#20351;&#29992;&#30340;&#26159;&#12290;<code>AuthenticatesUsers<\/code>&#22312;&#24744;&#30340;&#29992;&#25143;&#27169;&#22411;&#20013;&#28155;&#21152; trait &#12290;&#21478;&#22806;&#65292;&#20063;&#35831;&#26816;&#26597;&#19968;&#19979;&#12290;<code>logoutOtherDevices<\/code>&#35813;&#26041;&#27861;&#20986;&#20110;&#23433;&#20840;&#21407;&#22240;&#38656;&#35201;&#24403;&#21069;&#29992;&#25143;&#30340;&#23494;&#30721;&#12290;<\/p><h2>&#24403;&#24744;&#30331;&#20986;&#26102;&#65292;&#28165;&#31354;&#20250;&#35805;&#25968;&#25454;&#12290;<\/h2><p>Laravel &#20801;&#35768;&#22312;&#30331;&#20986;&#26102;&#28165;&#38500;&#25152;&#26377;&#20250;&#35805;&#25968;&#25454;&#12290;&#36825;&#36890;&#24120;&#29992;&#20110;&#28165;&#38500;&#19982;&#29305;&#23450;&#29992;&#25143;&#30456;&#20851;&#30340;&#24212;&#29992;&#31243;&#24207;&#29366;&#24577;&#65306;<\/p><pre><code>use IlluminateSupportFacadesAuth;\nuse IlluminateHttpRequest;\n\npublic function completeLogout(Request $request)\n{\n    \/\/ Get the current user's information\n    $user = Auth::user();\n\n    \/\/ Log the user out\n    Auth::logout();\n\n    \/\/ Invalidate the current session and regenerate the token\n    $request-&gt;session()-&gt;invalidate();\n\n    \/\/ Generate a new session token\n    $request-&gt;session()-&gt;regenerateToken();\n\n    \/\/ Redirect the user to the login page\n    return redirect('\/login');\n}\n<\/code><\/pre><h2>&#36890;&#36807;&#20013;&#38388;&#20214;&#30331;&#20986;<\/h2><p>&#22914;&#26524;&#38656;&#35201;&#22312;&#26576;&#20123;&#26465;&#20214;&#19979;&#33258;&#21160;&#27880;&#38144;&#29992;&#25143;&#65292;&#20363;&#22914;&#24403;&#36134;&#25143;&#34987;&#20572;&#29992;&#26102;&#65292;&#20351;&#29992;&#20013;&#38388;&#20214;&#21487;&#33021;&#26159;&#26368;&#22909;&#30340;&#36873;&#25321;&#12290;&#20013;&#38388;&#20214;&#22312;&#35831;&#27714;&#21040;&#36798;&#24212;&#29992;&#31243;&#24207;&#20043;&#21069;&#22788;&#29702;&#35831;&#27714;&#26159;&#38750;&#24120;&#22909;&#30340;&#65306;<\/p><pre><code>use Closure;\nuse IlluminateSupportFacadesAuth;\n\nclass LogoutInactiveUsers\n{\n    public function handle($request, Closure $next)\n    {\n        if (Auth::check() &amp;&amp; !Auth::user()-&gt;isActive) {\n            Auth::logout();\n            return redirect('\/login')-&gt;with('error', 'Your account is not active.');\n        }\n\n        return $next($request);\n    }\n}\n<\/code><\/pre><p>&#20026;&#20102;&#28608;&#27963;&#20013;&#38388;&#20214;&#65292;&#24744;&#38656;&#35201;&#22312;&#20854;&#20013;&#27880;&#20876;&#23427;&#12290;<code>Kernel.php<\/code>&#22312;&#24744;&#30340;Laravel&#24212;&#29992;&#31243;&#24207;&#30340;HTTP&#30446;&#24405;&#20869;&#26377;&#19968;&#20010;&#25991;&#20214;&#12290;&#20197;&#19979;&#26159;&#19968;&#20010;&#31034;&#20363;&#65306;<\/p><pre><code>\/\/ Within 'appHttpKernel.php'\n\nprotected $routeMiddleware = [\n    ...\n    'logout.inactive' =&gt; AppHttpMiddlewareLogoutInactiveUsers::class,\n];\n<\/code><\/pre><p>&#28982;&#21518;&#65292;&#23558;&#20013;&#38388;&#20214;&#38468;&#21152;&#21040;&#38656;&#35201;&#33258;&#21160;&#27880;&#38144;&#26816;&#26597;&#30340;&#36335;&#30001;&#25110;&#19968;&#32452;&#36335;&#30001;&#19978;&#65306;<\/p><pre><code>Route::group(['middleware' =&gt; 'logout.inactive'], function () {\n    \/\/ Define routes that require the inactivity check here\n});\n<\/code><\/pre><h2>&#32467;&#35770;&#12290;<\/h2><p>&#22312;&#26412;&#25351;&#21335;&#20013;&#65292;&#25105;&#20204;&#35752;&#35770;&#20102;&#29992;&#20110;&#30331;&#24405;&#29992;&#25143;&#30340;&#21508;&#31181;&#26041;&#27861;&#21644;&#22330;&#26223;&#12290;&#36890;&#36807;&#20351;&#29992;&#20869;&#32622;&#20989;&#25968;&#21644;&#20013;&#38388;&#20214;&#65292;&#24744;&#21487;&#20197;&#26377;&#25928;&#22320;&#31649;&#29702;&#29992;&#25143;&#30331;&#24405;&#29366;&#24577;&#65292;&#20197;&#30830;&#20445;&#24744;&#30340;Web&#24212;&#29992;&#31243;&#24207;&#20013;&#30340;&#23433;&#20840;&#21644;&#29992;&#25143;&#21451;&#22909;&#20307;&#39564;&#12290;<\/p><p>&#35760;&#24471;&#65292;&#32593;&#31449;&#24212;&#29992;&#30340;&#23433;&#20840;&#24615;&#33267;&#20851;&#37325;&#35201;&#65292;&#27491;&#30830;&#31649;&#29702;&#21644;&#29992;&#25143;&#20250;&#35805;&#30340;&#31649;&#29702;&#21482;&#26159;&#20854;&#20013;&#19968;&#37096;&#20998;&#12290;&#22312;&#22788;&#29702;Laravel&#20013;&#30340;&#35748;&#35777;&#21644;&#29992;&#25143;&#31649;&#29702;&#26102;&#65292;&#24744;&#24212;&#22987;&#32456;&#21162;&#21147;&#29702;&#35299;&#24182;&#23454;&#36341;&#26368;&#20339;&#23454;&#36341;&#12290;<\/p><\/body>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--3\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/xygcfznnzczhsdmwydzhsmzzzmddnq-400x300.jpg\" alt=\"&#38271;&#24037;&#30721;&#22900;1523\" class=\"wp-image-2906\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#38271;&#24037;&#30721;&#22900;1523<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>Laravel &#26159;&#19968;&#20010;&#36731;&#37327;&#32423;&#30340; PHP &#26694;&#26550;&#65292;&#38750;&#24120;&#36866;&#21512;&#24555;&#36895;&#24320;&#21457; Web &#24212;&#29992;&#31243;&#24207;&#12290;&#19979;&#38754;&#25105;&#20204;&#23558;&#25506;&#35752; Laravel &#20013;&#27880;&#38144;&#29992;&#25143;&#30340;&#20960;&#31181;&#26041;&#27861;&#65292;&#21253;&#25324;&#22522;&#30784;&#21644;&#39640;&#32423;&#25216;&#24039;&#12290;<\/p>\n<h3>&#22522;&#30784;&#26041;&#27861;<\/h3>\n<ol>\n<li>\n<p><strong>&#20351;&#29992; <code>Auth::logout()<\/code> &#20989;&#25968;<\/strong>&#65306;<\/p>\n<ul>\n<li>&#36825;&#26159;&#26368;&#30452;&#25509;&#30340;&#26041;&#27861;&#65292;&#20294;&#36890;&#24120;&#19981;&#25512;&#33616;&#20351;&#29992;&#65292;&#22240;&#20026;&#23427;&#20250;&#24378;&#21046;&#29992;&#25143;&#36864;&#20986;&#24403;&#21069;&#30331;&#24405;&#29366;&#24577;&#12290;<\/li>\n<li>&#20248;&#28857;&#65306;&#31616;&#21333;&#26131;&#25026;&#12290;<\/li>\n<li>&#32570;&#28857;&#65306;&#22914;&#26524;&#29992;&#25143;&#27809;&#26377;&#30331;&#24405;&#65292;&#21487;&#33021;&#20250;&#24341;&#21457;&#23433;&#20840;&#38382;&#39064;&#12290;<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><strong>&#36890;&#36807; HTTP &#29366;&#24577;&#30721; 302<code>Location: \/logout<\/code><\/strong>&#65306;<\/p>\n<ul>\n<li>&#20351;&#29992;&#27492;&#26041;&#27861;&#26102;&#65292;&#35831;&#30830;&#20445;&#24212;&#29992;&#31243;&#24207;&#33021;&#22815;&#27491;&#30830;&#22788;&#29702;&#37325;&#23450;&#21521;&#65292;&#38450;&#27490;&#20986;&#29616;&#23433;&#20840;&#28431;&#27934;&#12290;<\/li>\n<li>&#20248;&#28857;&#65306;&#36866;&#29992;&#20110;&#19981;&#38656;&#35201;&#39564;&#35777;&#30340;&#24773;&#20917;&#19979;&#12290;<\/li>\n<li>&#32570;&#28857;&#65306;&#29992;&#25143;&#20307;&#39564;&#19981;&#20339;&#65292;&#22240;&#20026;&#29992;&#25143;&#38656;&#35201;&#25163;&#21160;&#28857;&#20987;&#38142;&#25509;&#25165;&#33021;&#23436;&#25104;&#27880;&#38144;&#25805;&#20316;&#12290;<\/li>\n<\/ul>\n<\/li>\n<li>\n<p><strong>&#36890;&#36807; Cookie<\/strong>&#65306;<\/p>\n<ul>\n<li>&#24403;&#29992;&#25143;&#35775;&#38382;&#32593;&#31449;&#21518;&#65292;&#21487;&#20197;&#35774;&#32622;&#19968;&#20010; Cookie &#26469;&#36319;&#36394;&#20854;&#36523;&#20221;&#65292;&#24182;&#22312;&#29992;&#25143;&#23581;&#35797;&#20877;&#27425;&#35775;&#38382;&#26102;&#33258;&#21160;&#27880;&#38144;&#12290;<\/li>\n<li>&#20248;&#28857;&#65306;&#23433;&#20840;&#24615;&#39640;&#65292;&#29992;&#25143;&#20307;&#39564;&#33391;&#22909;&#12290;<\/li>\n<li>&#32570;&#28857;&#65306;&#22914;&#26524; Cookie &#34987;&#31713;&#25913;&#25110;&#32773;&#27983;&#35272;&#22120;&#31105;&#29992;&#20102;&#65292;&#21017;&#26080;&#27861;&#27880;&#38144;&#29992;&#25143;&#12290;<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h3>&#39640;&#32423;&#26041;&#27861;<\/h3>\n<ol start=\"4\">\n<li><strong>&#20351;&#29992;&#20013;&#38388;&#20214;<\/strong>&#65306;\n<ul>\n<li>&#22312; Laravel &#20013;&#65292;&#21487;&#20197;&#36890;&#36807;&#33258;&#23450;&#20041;&#20013;&#38388;&#20214;&#26469;&#23454;&#29616;&#29992;&#25143;&#27880;&#38144;&#21151;&#33021;&#12290;&#20363;&#22914;&#65292;&#21487;&#20197;&#21019;&#24314;&#19968;&#20010;&#21517;&#20026; <code>LogoutMiddleware.php<\/code> &#30340;&#20013;&#38388;&#20214;&#12290;<\/li>\n<li>&#36825;&#20010;&#20013;&#38388;&#20214;&#21487;&#20197;&#22312;&#35831;&#27714;&#21040;&#36798;&#25511;&#21046;&#22120;&#20043;&#21069;&#25191;&#34892;&#65292;&#20174;&#32780;&#38459;&#27490;&#29992;&#25143;&#20174;&#20219;&#20309;&#22320;&#26041;&#36864;&#20986;&#12290;<\/li>\n<\/ul><\/li>\n<\/ol>\n<pre><code class=\"language-php\">&lt;?php\n\nnamespace AppHttpMiddleware;\n\nuse Closure;\nuse IlluminateSupportFacadesAuth;\n\nclass LogoutMiddleware\n{\n    public function handle($request, Closure $next)\n    {\n        if (Auth::check()) {\n            Auth::logout();\n        }\n\n        return $next($request);\n    }\n}<\/code><\/pre>\n<ol start=\"5\">\n<li><strong>&#20351;&#29992; Laravel &#37197;&#32622;&#25991;&#20214;<\/strong>&#65306;\n<ul>\n<li>&#21487;&#20197;&#23558;&#29992;&#25143;&#27880;&#38144;&#30340;&#21151;&#33021;&#37197;&#32622;&#21040; Laravel &#30340;&#37197;&#32622;&#25991;&#20214;&#20013;&#12290;&#36825;&#20801;&#35768;&#20320;&#22312;&#24212;&#29992;&#30340;&#19981;&#21516;&#37096;&#20998;&#28789;&#27963;&#22320;&#23454;&#29616;&#27880;&#38144;&#36923;&#36753;&#12290;<\/li>\n<li>&#31034;&#20363;&#37197;&#32622;&#25991;&#20214; (<code>config\/auth.php<\/code>)&#65306;<\/li>\n<\/ul><\/li>\n<\/ol>\n<pre><code class=\"language-php\">'guards' =&gt; [\n    'web' =&gt; [\n        'driver' =&gt; 'session',\n        'provider' =&gt; 'users',\n    ],\n],<\/code><\/pre>\n<ol start=\"6\">\n<li><strong>&#20351;&#29992; Laravel &#33258;&#21160;&#21270;&#33050;&#26412;<\/strong>&#65306;\n<ul>\n<li>&#21478;&#19968;&#31181;&#26041;&#27861;&#26159;&#21033;&#29992; Laravel &#33258;&#21160;&#21270;&#33050;&#26412;&#65288;Artisan&#65289;&#26469;&#23454;&#29616;&#29992;&#25143;&#27880;&#38144;&#21151;&#33021;&#12290;&#36825;&#31181;&#26041;&#27861;&#26356;&#22797;&#26434;&#65292;&#20294;&#25552;&#20379;&#20102;&#26356;&#22810;&#30340;&#25511;&#21046;&#26435;&#21644;&#28789;&#27963;&#24615;&#12290;<\/li>\n<\/ul><\/li>\n<\/ol>\n<h3>&#24635;&#32467;<\/h3>\n<p>&#36873;&#25321;&#21738;&#31181;&#26041;&#27861;&#21462;&#20915;&#20110;&#24744;&#30340;&#39033;&#30446;&#38656;&#27714;&#21644;&#25216;&#26415;&#26632;&#12290;&#22522;&#30784;&#26041;&#27861;&#26131;&#20110;&#29702;&#35299;&#19988;&#22522;&#26412;&#21487;&#29992;&#65292;&#32780;&#39640;&#32423;&#26041;&#27861;&#25552;&#20379;&#26356;&#22823;&#30340;&#25511;&#21046;&#21644;&#23450;&#21046;&#33021;&#21147;&#12290;&#37325;&#35201;&#30340;&#26159;&#35201;&#26681;&#25454;&#23454;&#38469;&#38656;&#27714;&#36873;&#25321;&#21512;&#36866;&#30340;&#26041;&#27861;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Bug&#32534;&#35793;&#29422; &#22909;&#30340;&#65292;&#19979;&#38754;&#25105;&#23558;&#35814;&#32454;&#35762;&#35299;Laravel&#20013;&#22914;&#20309;&#27880;&#038;#381..<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false},"tags":[],"my1js2nav":[44],"tuisongtax":[],"class_list":["post-853","my1js","type-my1js","status-publish","hentry","my1js2nav-laravel"],"acf":{"qian_art_seotitle":"","qian_art_seotitle_source":{"label":"SEO\u6807\u9898","type":"text","formatted_value":""},"qian_art_seokws":"","qian_art_seokws_source":{"label":"SEO\u5173\u952e\u8bcd","type":"text","formatted_value":""},"qian_art_stzhong":"","qian_art_stzhong_source":{"label":"\u4e2d | \u77ed\u6807\u9898","type":"text","formatted_value":""}},"_links":{"self":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js\/853","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js"}],"about":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/types\/my1js"}],"author":[{"embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/users\/1"}],"wp:attachment":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/media?parent=853"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tags?post=853"},{"taxonomy":"my1js2nav","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js2nav?post=853"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tuisongtax?post=853"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}