php中thinkphp5中url问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php中thinkphp5中url问题相关的知识,希望对你有一定的参考价值。

为什么会这样?

打开F12开发工具,切换到Network选项卡。

再点击提交登录,如果出错,在network里找到对应的请求,点击选中,右侧切换到response选项卡,如果系统是配置的是debug模式,并且服务器打开了错误输出 ,这里就能看到返回的详细错误信息,再根据错误信息去修复代码

这是我为了演示给你看故意在系统改了个错误显示的。

参考技术A

500错误是服务器错误,检查下你的checkLogin代码是不是哪里有问题,试着不做复杂的操作,只返回一个简单的数字或字符串,看下这个ajax请求有没有请求成功,如果还是显示错误,只能查看web服务器的日志查看原因了

追问

明天发代码给你看

追答

你先按照我说的,先返回一个简单的数字看下能请求成功吗,然后再一步一步地排查

参考技术B

    报错信息先发出来,直接一个500看不出你出现的是什么问题

    ajax请求错误,先排除控制器代码问题,直接return 一个随意的字符串,试试看看能不能请求成功。成功看3,失败看4

    请求成功以后进一步排查,用php的断点打印,die;直到找到问题出自那行,是什么原因导致的。看5

    查看路径问题,及ajax的语法是否正确。

    进一步去解决问题的根本。

    最重要的还是,请把报错信息发出来!不然神仙也看不懂

thinkphp框架url中隐藏index.php

1、httpd.conf配置文件中加载了mod_rewrite.so模块 //在APACHE里面去配置 
#LoadModule rewrite_module modules/mod_rewr
ite.so把前面的警号去掉 

技术分享













2、在apache配置文件httpd.conf中,将里面的AllowOverride None都改为AllowOverride All

技术分享

进行1和2之后,一定要重启apache服务

3、.htaccess文件必须放到根目录下

(windows里面创建.htaccess,新建任何一个文件,打开,另存为文件类型选择所有,即可创建)

这个里面应该有

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ index.php/$1 [L] 

技术分享

4、保证开启URL重写模式

技术分享

本文出自 “12382281” 博客,请务必保留此出处http://12392281.blog.51cto.com/12382281/1880899

以上是关于php中thinkphp5中url问题的主要内容,如果未能解决你的问题,请参考以下文章

git方式安装thinkphp5

Thinkphp远程代码执行 payload汇总

thinkphp5.0URL访问

[李景山php]每天TP5-20170117|thinkphp5-Url.php-2

thinkphp5 Apache / IIs环境下 URL重写

ThinkPHP5 对html页面中的url传参操作