laravel路由index.php,宝塔面板下laravel路由设置踩坑记

本文记录了一位小编在宝塔面板下配置Laravel路由时遇到的问题及解决过程。最初,Laravel路由设置不生效,只允许访问根目录。经过检查,发现在vhost配置文件中添加特定的Nginx配置后,问题才得以解决。最终,通过在vhost/218.22.250.70.conf文件中加入`location`指令,成功实现了Laravel路由的正常工作。
摘要由CSDN通过智能技术生成

小编研究学习laravel过程中,laravel路由设置应该很容易啊,可是小编在宝塔面板下配置laravel路由硬是折腾了不少时间,现将踩过的坑跟大家说说。

原来的配置

关于laravel路由设置,官方是这样说的,

NginxIf you are using Nginx, the following directive in your site configuration will direct all requests to the index.php front controller:location / {try_files $uri $uri/ /index.php?$query_string;}

小编测试环境用的就是宝塔面板的Nginx-1.11.13

a622c37a569ab041a84c3b875a556a45.png

于是在nginx.conf文件中做了如下配置

3492a664b7191f0a6afe18214b6213f6.png

重点是这行

location / {try_files $uri $uri/ /index.php?$query_string;}

在 vhost目录中的网站218.22.250.70.conf文件中配置如下

35b105ecacb9a90b058e00d5023669b1.png

小编开始认为只要nginx.conf文件有路由改写配置就可以了,结果不承想laravel中routes/web.php的如下内容基本上都路由不成功。

Route::get('test',function(){echo 'key';});Route::get('/', function () {return view('welcome');});Route::get('foo', function () {return 'Hello World';});

结果是这这样的

17af6fb40bc8bd83bb620afc64414a3b.png

fb96f363e8f942e9d68c80c2486a7094.png

7b685e0735c6eafb57288e18ac73792c.png

看来只有218.22.250.70/ 这个网站根目录路由才可以,其它都不行,为什么?小编为此折腾了好几天。

修改的配置

终于有一天,小编想是不是还是ngnix配置的问题,小编在vhost/218.22.250.70.conf文件中也做了如下配置

location / {try_files $uri $uri/ /index.php?$query_string;}

如图

867b36b0588ac1cecd66379d0a1394f4.png

再次重启nginx后访问218.22.250.70/foo,终于如愿以偿的出现了期望的界面

05d8a68f46b167982071897dc2f6a250.png

至此,宝塔面板下laravel的路由设置终于配置正确。

总结

宝塔面板支持创建多个网站,在配置nginx时要针对子网站的需要配置好vhost/*.conf文件,如上所述,总的nginx.conf文件有的配置并不能继承到vhost/*.conf中去。类的继承概念在这里不起作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值