请教一个发布PHP到线上版本的问题

原创
2016-06-06 20:33:50 746浏览

线上是CentOS,环境和本地不一样,发上去后,会出现一些“异常情况”
由于线上环境开启了OPCACHE,调试起来很费劲(不,是非常~~~~~费劲)。

那么现在可以确定两点:

  1. 有经常配到本地OK,但线上环境可能会存在一些小问题的情况,需要做临时调试
  2. 线上环境开启了opcache缓存代码,不能关掉

那么这样的情况,应该怎样做?才能做到线上发版更顺畅。。。。

回复内容:

线上是CentOS,环境和本地不一样,发上去后,会出现一些“异常情况”
由于线上环境开启了OPCACHE,调试起来很费劲(不,是非常~~~~~费劲)。

那么现在可以确定两点:

  1. 有经常配到本地OK,但线上环境可能会存在一些小问题的情况,需要做临时调试
  2. 线上环境开启了opcache缓存代码,不能关掉

那么这样的情况,应该怎样做?才能做到线上发版更顺畅。。。。

http://php.net/manual/zh/ref.opcache.php
如果开启了opcache,在不重启PHP的情况下要使修改生效,可以用opcache_reset()清空所有PHP进程的缓存或者用opcache_invalidate()删除指定脚本的缓存.

如果你熟悉 Linux 以及 php 的编译安装,我推荐使用 vagrant+virtualbox 来搭建开发环境。如果你不了解这些,那么解决你的问题的根本办法有三点:

  1. 本地开发时记住明确文件名大小写问题
  2. 上线后记住检查文件权限
  3. 仔细阅读 php、nginx/apache 的配置手册,做到尽可能和线上统一,注意不是直接的覆盖,我说的是尽可能统一,不同之处肯定是存在的
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。