PHPCMS二次开发,同样的代码 部署在不同环境下,运行效果不一样

原先系统是在PHPStudy环境下部署并开发的,做了一个页面,显示正常的,后来因为项目需要,需要部署到IIS的环境下,部署IIS后发现这个页面有一部分代码被输出了,原先写... 原先系统是在PHPStudy环境下部署并开发的,做了一个页面,显示正常的,
后来因为项目需要,需要部署到IIS的环境下,部署IIS后发现这个页面有一部分代码被输出了,原先写的循环读取数据后以表单展示,现在变成了一小部分代码直接显示在页面上,
代码原封不动,甚至两种环境同时运行,phpstudy正常,IIS不正常
页面也不报错,错误日志也没有提示,我在想会不会是我IIS没有部署正常,PHP版本5.6 以FastCgiModule方式部署的
另外,也想问一下,phpcms到底如何显示报错的? 已经开启了debug=1了 还是不会显示错误,甚至故意写错代码,也不会报错,这个让调试难度加大很多啊。
问题解决了,不是代码问题,也不是IIS设置问题。。。。答案是,PHP页面中<??>这样的代码是无法被IIS识别的,必须加php 完整格式<?php ?> 因为IIS不止要识别PHP,还有其他的编码需要识别
展开
 我来答
htr1236544
2015-09-15 · TA获得超过889个赞
知道小有建树答主
回答量:104
采纳率:50%
帮助的人:65.3万
展开全部

你使用了伪静态功能吗?如果使用 那么 不同环境 解析伪静态是不同的。需要修改。

IIS 下 新建一个httpd.ini 文件

[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteEngine on
RewriteRule ^(.*)content-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/index.php?m=content&c=index&a=show&catid=$2&id=$3&page=$4
RewriteRule ^(.*)show-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/index.php?m=content&c=index&a=show&catid=$2&id=$3&page=$4
RewriteRule ^(.*)list-([0-9]+)-([0-9]+).html$ $1/index.php?m=content&c=index&a=lists&catid=$2&page=$3
追问
没有写伪静态,是一个后台的功能,代码是创建一个数据库连接,获取所有类别的信息,然后写入一个select里,在IIS下,select没有显示,并且在页面中输出了一部分代码(就是直接在页面中显示了一部分代码),在phpstudy里是正常显示的也能运行代码
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式