【发布时间】:2013-08-21 06:40:56
【问题描述】:
我将一个运行 ob ubuntu 10.10 服务器的 PHP 网站迁移到另一个 unbutu 12.04 服务器。 现在有些 php 函数已被弃用,有些函数找不到他们正在寻找的正确“路径”。 旧服务器运行的是 php 5.3.3,新服务器运行的是 php 5.3.10(所以没有太大区别)
有些链接是这样写的:
"../modules/xxx.php"
我只是将名称更改为完整路径,它正在工作。
由于网站完全在旧服务器上运行,因此配置应该是“ok”的。你们认为除了 php 版本之外还有其他原因导致此错误吗? 我考虑在新服务器上将 php 降级到 5.3.3 进行测试.... 但我不会这样做,当可能有其他原因时。
一些错误示例:
Deprecated: Function split() is deprecated in /data/
Warning: include(modules/mdl_users/settings.conf.php): failed to open stream: No such file or directory in /data/xxx/www/classes/module.class.php on line 35
当路径的一部分由这样的函数写入时,他无法打开文件
include($this->registry->admin_path."modules/".$this->name."/settings.conf.php"
很明显,php 中的配置已经以某种方式改变了。由于该网站不是我的,我不想手动更改 100 条路径。你认为降级会“修复”这个问题吗?
提前致谢
【问题讨论】:
-
降级可能是因为问题已被弃用且旧代码。您应该修复它而不是使用旧版本的 PHP。
-
它可能在旧服务器上也已被弃用,它可能是您的 php.ini 中的不同错误报告设置
-
可能是的,但是如果这些错误不负责,为什么页面不工作?在旧服务器上,页面 100% 正常工作。我只是复制了路径并正确配置了我的 apache2。它显示一个空白页面,这意味着 => php 问题
标签: php ubuntu migration error-log