Lamp 工作上遇到的一点问题

回复 收藏
  1. Linux + Apache + Mysql + PHP 这套环境经常会用到 , 下面记录点东西 .
  2. 公司找人开发的 PHP 网站 , 网站做完他们在 windows 平台上测试没有问题 , 可是发给我后 , 我在 Linux 上测试不能访问 .
  3. 网页提示 : 错误信息 - 500 , 服务器尝试执行请求时遇到了意外 .
  4. 网站错误日志提示 : PHP Parse error:  syntax error, unexpected end of file in 某个 php 文件的最后一行 .
  5.     分析 : 文件最后一行是个 ?> 正常的 php 结束 . 既然网站开发的人员测试没有问题 , 那么 php 代码应该是正确的 , 范不着拿这个来糊弄人吧 ?
  6. 可是为什么会提示语法错误呢 ?
  7. 我跟他们核对过各软件版本信息 , 都说没有问题 , 他们就是说我环境有问题 , apache 我什么也没有配置 , 执行 phpinfo() 也可以拿到结果 , 拿 php
  8. 代码测试连接数据量也正常 .
  9. 接着我拿着这个错误去 baidu 、google 终于找到了答案 :
  10. The error may caused by a missing curly bracket in PHP script coding. Beside, it may also caused by error in PHP coding
  11. in class definition, as in PHP, a class definition cannot be broke up and distributed into multiple files,
  12. or into multiple PHP blocks, unless the break is within a method declaration.
  13. But more commonly, the error is often caused by the use of Short Open tags in PHP,
  14. To use short open tags, it must be enabled in PHP.INI. Search for short_open_tag in PHP.INI, and change the value to On.
  15. 我是这样理解的 : 发生这种情况多半是开发人员语法不规范 , 不仔细检查 , 发生漏写 ; } ?> 等低级错误 ,导致语法报错 .
  16. 上面也说了 ,修改 php.ini 文件的 short_open_tag 的值等于 On 即可 ( 因为我并不是 php 开发人员 , 几千行代码我也找不到哪漏了 ).
  17. vim /usr/local/php/php.ini
  18.  211 short_open_tag = On  ## 大致在这个位置 , 可以通过搜索找到这行 将原来的 Off 改为 On , 重启 apache 即可
  19. 还有一个小问题 : apache 的运行用户跟站点目录的属主、属组不一致 .
  20. 这样会导致一个问题 , 例如 apache 默认是以 daemon 这个用户来运行的 , 如果你没有改他 , 那么你上传来的网站目录的属主、属组为 root 或其他普通
  21. 用户 , 目录权限为 drwxr-xr-x. , 也就是说运行 apache 的 daemon 这个用户对站点目录没有写入权限 , 那么你登陆网站后台的时候 ,可能就会无法登陆
  22. 解决这个问题 , 当然你可以 chmod -R 777 站点目录 ,但是这样并不安全 ,所以还是规范点来 .
  23. 还有就是 : 编译安装的 apache 跟 yum 安装的 mysql , 在编译 php 的时候 , 直接 --with-mysql --with-pdo-mysql 就可以 , php 会自动去默认路径找
  24. mysql (/var/lib/mysql). 还有一个就是 php 的时区默认是错误的 , 要改为 date.timezone = Asia/Shanghai .
  25. ## 希望对看到的朋友能有所帮助 !
2014-12-09 17:19 举报
已邀请:
0

暗夜独行客

赞同来自:

强哥厉害,学习了。
0

泡沫。

赞同来自:

强哥厉害,学习了。
0

MR_K

赞同来自:


强哥厉害,学习了。
0

杏雨秋枫

赞同来自:

强神求带!
0

xiaotuanyu120

赞同来自:

强哥,有个问题,网站目录上传网页文件属主问题你怎么解决的?没上传一次去改一次属主?
0

田埂上的梦

赞同来自:

好帖..  学习了{:4_91:}
0

阿铭 管理员

赞同来自:

其实打开display_error 或者记录php的错误日志 你往往会看到错误信息。
0

三悅

赞同来自:

{:6_151:}
0

riverxyz

赞同来自:

阿铭 发表于 2015-3-5 19:25
其实打开display_error 或者记录php的错误日志 你往往会看到错误信息。

同意。
0

西瓜.M

赞同来自:

get

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: