Laravel 5/5.4分页器在NGINX生产环境下无法工作

4
在我的本地环境中,我执行了$items = Model::paginate(10);,并且它能够正常工作。然后我将其部署到生产环境中,当我点击分页链接时,它一直显示第一页。随后我执行了dd($items),我发现长度感知分页当前页属性在我更改地址到/items?page=*时没有改变。如何使当前页属性相应更改?或者还有其他解况吗?谢谢。

所以Laravel 5.3或5.4。 - Kyslik
laravel 5.4 它是 - Ahmed Nawaz Khan
2个回答

5
我正在使用Ubuntu 16.04 Nginx服务器。问题是$_GET会话变量未正确设置。所以我在/etc/nginx/sites-available/default中,在location /块/指令内部将try_files $uri $uri/ /index.php?$query_string;更改为try_files $uri $uri/ /index.php?$args;,然后它就起作用了。或者请参见Laravel 5 - NGINX Server Config Issue with URL Query Strings

哇,我已经寻找这个问题的原因太久了。这完美地解决了该问题。谢谢! - user743873
这对我有用,谢谢,但下次请使用代码格式化工具。 - Crasher

0

很棒,谢谢 #Ahmed

我刚刚不得不改变我的

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

location / {
    index index.php;
    try_files $uri @rewriteapp;
}

location @rewriteapp {
    rewrite ^(.*)$ /index.php/$1 last;
}

我发现我的其他一些网站正在使用@rewriteapp部分,而且似乎运行良好。


@rewriteapp是什么意思? - Ahmed Nawaz Khan
1
@rewriteapp就像一个变量,它引用了我示例中的第二个位置属性。它注入了'rewrite ^(.*)$ /index.php/$1 last;'这部分内容。 - Louwki

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接