laravel要在域名后加index.php才能訪問其它頁面


網站環境: phpstudy8.1.0.4集成環境 PHP7.3.4nts + Ngnix1.15.11 + MySql5.7.26

框架:Laravel6.18.0

問題現象:

首頁加不加index.php都能正常訪問,沒問題;其他頁面的訪問必須要在前面加index.php才能訪問,如:http://laravel.pensive.top/admin/login提示"404 not found",如果改成:http://laravel.pensive.top/index.php/admin/login又能訪問,不會報錯。

解決方法:

1,為了讓其他頁面不用在前面加index.php也能正常訪問,我在學習群里也問了,百度上也查了幾天資料,終於找到了https://blog.csdn.net/W1122345/article/details/82424750這篇文章上的方法有效果。

參照上面的方法,我在phpstudy上的設置-->配置文件-->vhosts.conf-->laravel.pensive.top_80.conf 上編輯添加了

try_files $uri $uri/ /index.php?$query_string;

這一行代碼,【如下圖】

 

2,重啟Nginx1.15.11服務使得設置生效。

3,雖然上面的1,2點能解決問題,但是反復使用phpstudy8.1.0.4發現直接改完laravel.pensive.top_80.conf 后在【網站】--> 對應站點的【管理】-->【修改】的介面會提示配置文件已手動修改,在此操作會覆蓋之前的操作,【如下圖】

而且,手動改的配置文件內容雖然有效果,但是在【網站】-->【管理】-->【修改】的這個窗口的各個參數沒有同步,只是提示改了這里后原先的手動配置會被覆蓋。這樣的話當你以后要在這里修改這個網站別的設置時,比如切換PHP版本什么 的,一確認的話,前面 手動改的解決index.php問題的代碼就不存在了。所以不推薦1,2的方法。

【推薦的方法】

phpstudy8.1.0.4 -->【網站】-->【管理】-->【修改】-->【錯誤頁面】參數最后添加代碼

try_files $uri $uri/ /index.php?$query_string;

END

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM