url 中传递参数的搜索结果页面返回状态 404

尝试使用以下形式在我的 Laravel 网站上实现简单的搜索:


<form action="https://www.example.com/search-results" class="cse-search-box"> 

    <input type="hidden" name="cx" value="partner-pub-mygoogleid:myid"> 

    <input type="hidden" name="cof" value="FORID:10"> 

    <input type="hidden" name="ie" value="UTF-8"> 

    <input type="text" class="search-inp icon" name="q" size="30" placeholder="Search my site"> 

</form>

该表单生成的 url 为:


https://www.examlle.com/search-results?cx=partner-pub-mygoogleid%myid&cof=FORID%3A10&ie=UTF-8&q=searchterm`

我的路线是:


Route::get('search-results', 'SearchController@getResults');

一切似乎都有效,除了一件非常有趣的事情,搜索结果页面显示状态 404。


当我从 url 中删除参数时,状态会更改为 200。


知道为什么会发生这种情况,或者有什么建议如何实现此表单,以便在存在参数时其响应为 200?


POPMUISE
浏览 105回答 1
1回答

www说

我发现问题出在我的nginx.conf问题出在该行的 location php 块内try_files $query_string/index.php =404;location ~ \.php$ {&nbsp; &nbsp; # try_files $query_string/index.php =404;&nbsp; &nbsp; fastcgi_split_path_info ^(.+\.php)(/.+)$;&nbsp; &nbsp; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;&nbsp; &nbsp; fastcgi_index index.php;&nbsp; &nbsp; include fastcgi_params;}注释掉后,一切都按预期进行,status 404我的搜索结果页面上不再有
打开App,查看更多内容
随时随地看视频慕课网APP