laravel8路由問題+apache,/根路由報404

Denly發表於2020-10-12

1、路由修改,恢復以前的寫法

第一步:開啟 App\Providers\RouteServiceProvider.php檔案
第二步:新增屬性

# 新增該屬性就可以按照之前習慣的寫法編碼了
   protected $namespace = "App\Http\Controllers";
# 效果為下方
   Route::get('test' , 'IndexController@index');

2、Apache 報錯404,

在public下,開啟.htaccess這個檔案,在檔案裡新增如下內容,然後重啟Apache,就可以訪問xxx.com/web 頁面了

<IfModule mod_rewrite.c>
Options +FollowSymLinks
Options -MultiViews
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

或者使用這個能報錯,顯示DUBUG的

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options +FollowSymLinks
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

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

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章