用thinkphp做的项目,本地测试没问题,放到服务器linux上后

发布网友 发布时间:2022-04-24 05:43

我来回答

5个回答

热心网友 时间:2022-04-06 02:18

是你的环境不支持这个url模式吧,你一个模式


通模式:设置URL_MODEL 为0
采用传统的URL参数模式http://serverName/appName/?m=mole&a=action&id=1
二、PATHINFO模式(默认模式):设置URL_MODEL 
为1
默认情况使用PATHINFO模式,ThinkPHP内置强大的PATHINFO支持,提供灵活和友好URL支持。PATHINFO模式自动识别模块和操作,例如http://serverName/appName/mole/action/id/1/
 或者 
http://serverName/appName/mole,action,id,1/
在不考虑路由的情况下,第一个参数会被解析成模块名称(如果启用了分组的话,则依次往后递推),第二个参数会被解析成操作,后面的参数是显式传递的,而且必须成对出现,例如:http://serverName/appName/mole/action/year/2008/month/09/day/21/
其中参数之间的分割符号由URL_PATHINFO_DEPR参数设置,默认为”/”,例如我们设置URL_PATHINFO_DEPR为“-”的话,就可以使用下面的URL访问http://serverName/appName/mole-action-id-1/
注意不要使用”:” 
和”&”符号进行分割,该符号有特殊用途。
略加修改,就可以展示出富有诗意的URL,呵呵~
如果想要简化URL的形式可以通过路由功能(后面会有描述)以及空模块和空操作。
在PATH_INFO模式下面,会把相关参数转换成GET变量,以及并入REQUEST变量,因此不妨碍URL里面的GET和REQUEST变量获取。三、REWRITE模式: 
设置URL_MODEL 为2
该URL模式和PATHINFO模式功能一样,除了可以不需要在URL里面写入口文件,和可以定义.htaccess 
文件外。在开启了Apache的URL_REWRITE模块后,就可以启用REWRITE模式了,具体参考下面的URL重写部分。四、兼容模式: 
设置URL_MODEL 
为3
兼容模式是普通模式和PATHINFO模式的结合,并且可以让应用在需要的时候直接切换到PATHINFO模式而不需要更改模板和程序,还可以和URL_WRITE模式整合。兼容模式URL可以支持任何的运行环境。
兼容模式的效果是:http://serverName/appName/?s=/mole/action/id/1/
并且也可以支持参数分割符号的定义,例如在URL_PATHINFO_DEPR为~的情况下,下面的URL有效:http://serverName/appName/?s=mole~action~id~1

请采纳我给你的答案 谢谢!

热心网友 时间:2022-04-06 03:36

你是不是放到 虚拟云主机上了哦, TP是要配置路由重写的, 配置nginx或apache中的rewrite

热心网友 时间:2022-04-06 05:10

linux上运行的什么web服务?应该是伪静态没有配好

热心网友 时间:2022-04-06 07:02

修改不了权限什么都没办法的

热心网友 时间:2022-04-06 09:10

确保伪静态正常
比如apache的.htaccess追问怎么确保?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com