https://learnku.com/articles/...php
php7.4
nginx1.17
mysql5.7
windows10html
public function test(Request $request) { $view = view('test')->render(); Storage::disk('local')->put('views/' . $request->path(), $view); return $view; }
location / { root D:/wwwroot/demo/storage/app/views; index index.html; try_files $uri $uri.html @default; } location @default { root D:/wwwroot/demo/public; index index.php; try_files $uri $uri/ /index.php$is_args$query_string; }
這樣就能在第一次訪問時生成相應的靜態網頁,以後再訪問時就會直接返回靜態網頁。mysql
實現過時刪除、自動更新功能,大概就是獲取views文件夾下的全部文件名,記錄在案,而後按期清除,還能夠主動發出請求觸發更新。另外一個就是無損實現全站靜態化,這須要覆蓋 Foundations/helpers.php
中的 view()
方法,然而這個文件已經被建立自動加載映射了,正常狀況下沒法覆蓋,你能夠安裝 funkjedi/composer-include-files
,它能夠優先自動加載你自定義的php文件,這樣就ok了。nginx
一般須要顯示當前登陸用戶的頭像,靜態化後就不能顯示了?固然能夠。sql
好比,認證後保存用戶數據到瀏覽器,經過js把當前狀態更新到靜態的html上。windows
Laravel通用插件系統,使你的Laravel項目具有熱插拔插件功能!瀏覽器