我正在使用我克隆的 Laravel 8 API。
它可以在實時服務器上運行,但在我的本地 WAMP 服務器上它會拋出500 Internal Server Error.
該apache_error.log顯示:
無效的命令“標頭”,可能拼寫錯誤或由未包含在服務器配置中的模塊定義
.htaccess放置在公共目錄(虛擬主機指向的位置)中的檔案內容是:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Max-Age "1000"
Header always set Access-Control-Allow-Headers "Accept, Accept-Encoding, Authorization, Content-Type, Origin, X-Requested-With"
Header always set Access-Control-Allow-Methods "GET, DELETE, PATCH, POST, PUT, OPTIONS"
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (. )/$
RewriteRule ^ %1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
筆記:
其他 PHP / Laravel 應用程式確實在本地環境中作業。
另外,mod_rewrite的被啟用。
是什么導致了這個問題?
uj5u.com熱心網友回復:
“ ...或由未包含在服務器配置中的模塊定義”表明您需要先啟用一個模塊。Header是Apache中mod_headers 的一部分。
在您的 WAMP 中啟用該模塊以使其Header作業。
轉到wamp64\bin\apache\apache2.4.46\conf,打開httpd.conf找到LoadModule headers_module modules/mod_headers.so并取消注釋它。
然后重新啟動 WAMP。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/408358.html
標籤:
