Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何复制基于PHP的网站?_Php_Installation_Environment_Duplication - Fatal编程技术网

如何复制基于PHP的网站?

如何复制基于PHP的网站?,php,installation,environment,duplication,Php,Installation,Environment,Duplication,背景: 我是PHP新手,但有人要求我修改一些代码,以支持托管在我们内部网上的应用程序。实际的代码更改看起来并不太糟糕。然而,目前还没有开发环境,所以我已经承诺创建一个复制服务器来开发和测试我的更改 在这一点上,由于我对PHP不太熟悉,看起来我可能不得不对生产机器上的所有Apache HTTPD和PHP配置设置/选项/包进行反向工程,除非我能够战略性地将现有的生产环境复制到开发机器上 我的问题: 有可能吗?i、 e.通过FTP将Apache/PHP安装中的某些目录复制到原始环境中?如果有,哪些目录

背景:

我是PHP新手,但有人要求我修改一些代码,以支持托管在我们内部网上的应用程序。实际的代码更改看起来并不太糟糕。然而,目前还没有开发环境,所以我已经承诺创建一个复制服务器来开发和测试我的更改

在这一点上,由于我对PHP不太熟悉,看起来我可能不得不对生产机器上的所有Apache HTTPD和PHP配置设置/选项/包进行反向工程,除非我能够战略性地将现有的生产环境复制到开发机器上

我的问题:

  • 有可能吗?i、 e.通过FTP将Apache/PHP安装中的某些目录复制到原始环境中?如果有,哪些目录?一个复杂的情况可能是原始环境是SUSE Linux,而开发机器是CentOS。除此之外,我还在开发机器上安装了匹配的HTTPD和PHP版本
  • 如果这不明智/不可能,我应该如何着手复制环境?我应该检查哪些区域

  • 提前谢谢

    简单地克隆服务器会容易得多,也不会让人心痛得多,你可能需要和负责管理服务器的人谈谈才能做到这一点。我之所以这么说,是因为服务器上可能有各种模块/库和大量其他东西,如果要让应用程序在CentOS机器上完全相同地运行,您需要花很长时间才能弄清楚到底需要什么。其次,如果两个环境相同,这是最佳做法,这样您就知道您的测试是可靠的。

    将整个内容克隆到VM中,提取代码并将其放入源代码存储库(例如git)

    在您的机器上开发之后,部署到您的VM(除非您可以获得另一台机器,或者您有时间和耐心对克隆机器的配置进行反向工程)

    您可以通过简单地从VM中拉代码开始部署,但是如果您认为您的项目可能持续更长时间,考虑建立连续的集成环境,并将VM配置文件放入Git存储库CO中,您可以在生产中重新创建它(或者将您的产品挂钩到CI)。p> 我应该如何着手复制环境?我应该检查哪些区域

    你绝对应该考虑:

    • /etc/httpd/
    • /etc/php5/
      (可能是不同的名称)

    特别是,从这些文件夹中包含的文件
    php.ini
    httpd.conf
    apache2.conf
    开始。除上述解决方案外,另一种解决方案是在生产机器上设置虚拟主机,类似于
    test.yourdomain.com
    并将数据库复制到测试数据库中


    然后,您可以在测试环境中的live server上测试站点,只需在测试版本中更改db连接设置即可。

    根据应用程序的性质,这可能更适合于不需要环境的精确副本。许多站点\应用程序都是在windows上开发的,然后上传到linux上,一切都很好,但现在还不知道情况是否如此。您可以将副本放在服务器上的另一个目录中,大多数情况都是一样的。在第二台机器上使用
    虚拟机
    Vmware
    可能是一种选择,具体取决于您的情况。感谢您的关注和回答,各位!我不知道这是否是@Steve t关心的问题,但克隆SuSE服务器会带来额外的许可成本。这可能是生产服务器为SuSE和dev box CentOS的部分原因。