帮助中心
韩国服务器租用帮助
韩国服务器网站php问题解决方案
2018-08-15 17:24:44

打开 PHP 服务的报错功能

编辑 php.ini 设置字段:

display_errors = On

error_reporting = E_ALL & ~E_NOTICE

error_reporting 变量的默认值是 E_ALL。这个设置会显示从不良编码实践到无害提示到出错的所有信息。E_ALL 对于开发过程来说有点太细,因为它在屏幕上为一些小事(例如变量未初始化)也显示提示,会搞糟浏览器的输出。

php 执行权限问题

在 Ubuntu 的 php文件执行 move_uploaded_file() 移动文件失败。

move_uploaded_file() 移动文件失败,更改文件夹权限时,只更改了文件夹本身的权限,而没有递归更改文件夹下所有文件的权限,没有使用 chmod 的 -R 模式。

在 Ubuntu 使用 Smarty 模板引擎时,运行时主页空白,要给根目录内生成编译文件的 php文件足够的执行权限,否则无法生成编译内容。

更换网站根目录下的文件后,即使曾经已给了根目录权限,更换文件后也需要重新给所有的新文件权限,因此要重新给根目录递归的权限。

require_once 报错

require_once './xxx.php'; 改为 requrie_once 'xxx.php';

404 NOT FOUNT

网站目录下的文件名与网页中的链接书写的大小写必须一致,否则找不到页面。 注意,修改配置文件修改后要重启相应服务,php 和 nginx 对应不同的服务。

目录分隔符

Ubuntu内以正斜杠(/)为目录分隔符,不可以使用反斜杠(\)代替。

ThinkPHP报模板不存在:./Application/Home/View/Index/index.html

在客户端测试网站的时候不区分大小写,因此不会检查出大小写上的错误,当拿到真正的服务器上运行时就会因此报错。将方法名index改成大写才行。

error 1292 (22007): Incorrect datetime value: ‘0000-00-00 00:00:00’ for column ‘xx’ at row 1

执行 show variables like ‘%sql_mode%’;

值中包含NO_ZERO_IN_DATE,NO_ZERO_DATE,TRADITIONAL,去掉这三个重新赋值:

set global

sql_mode=’STRICT_TRANS_TABLES,STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER’;

最后重新登录mysql,会看到该值发生变化。

include某页面后不能使用里面定义的变量

在函数里不能使用外部引入的变量,用 global 将变量转化为全局变量即可。例如:

include 'config.php';

global $dbhost, $dbuser, $dbpwd, $dbname, $dbcharset;

图形验证码不显示

安装GD库。

sudo apt-get install php5-gd

安装时,不要省略 sudo 一词,否则报错,导致安装不完整。

USA-IDC专业韩国数据中专业提供优质php服务器租用,sdn智能线路分配,最大限度利用带宽,性能稳定可靠,欢迎广大用户联系24小时在线客服租用。

新客优惠
原生IP 至强E3系列
原生IP地址,新用户首购有优惠
1480/月起
USA-IDC为您提供免备案服务器 0元试用
立即联系在线客服,即可申请免费产品试用服务
立即申请