最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
windows服务器使用IIS时thinkphp搜索中文无效问题
时间:2026-09-23 08:10:01 编辑:袖梨 来源:一聚教程网
控制器Search.php
在搜索控制器Search.php类中找到 lists 方法,使用下面代码调试程序
$param = input('param.');dump($param);exit;注:笔者使用的是thinkphp5,版本thinkphp5以上都可以使用上述代码。
发现搜索关键词参数keywords,值为空。到底是哪一步的时候被屏蔽的呢,回忆一下thinkphp的底层工作原理。
thinkphp的底层工作原理
1. 根目录index.php运行
2. 在/thinkphp/start.php文件中,base.php加载配置(包括惯例配置文件)
3. App::run()->send();实现应用的启动。这个方法是整个框架的核心方法,简单一点说就是加载多个初始化文件、url路由转换、执行控制器方法
4. send()方法将程序执行结果返回给客户端
url路由检测处理有问题
初步猜测应该是url路由检测处理有问题,这个步骤会对参数进行分析处理。分析底层程序代码,app.php文件run方法中,调用Request.php的pathinfo方法来处理URL,使用$_SERVER['PATH_INFO']来获取参数。
iis环境解决方法
一般浏览器默认是gb2312,而我们的程序是UTF8的,所以用iconv()转换。加个iis环境判断,代码如下
if(false!==stripos($_SERVER['SERVER_SOFTWARE'],'IIS')){$_SERVER['PATH_INFO']=iconv('gbk', 'utf-8//IGNORE', $_SERVER['PATH_INFO']);}到此这篇关于windows服务器使用IIS时thinkphp搜索中文无效问题的文章就介绍到这了,更多相关IIS下thinkphp搜索中文内容请搜索一聚教程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持一聚教程网!
相关文章
- PHP利用redis位图实现简单的签到功能 09-23
- PHP使用DOM解析器删除指定a链接的方法实例分析 <font color=red>原创</font> 09-23
- PHP高并发高负载下的3种实战场景解决方法示例 09-22
- php解决注册并发问题并提高QPS 09-22
- ThinkPHP5.0之底层运行原理执行流程分析 09-22
- php中关于token验证的相关问题详解 09-22