6

我们有一个基于prestashop的eShop构建,我们每周都在开发新功能。我在这里写这篇文章是因为我没有找到正确的方法来更新我们的生产环境,而无需再次上传所有的代码或手动上传修改过的文件。Prestashop测试/生产服务器最佳实践

现在,我们的工作是这样的:

  • 我们的开发人员有连接GIT回购的本地副本工作。
  • 一旦我们有了一些新功能,并且我们想要创建一个新版本,我可以从回购下载最新版本并在另一台计算机上进行本地测试。

=>这里说到的是一旦所有的测试都在我的本地副本已经过去了,我们采取了所有已修改的文件,我不喜欢... :)

  • 部分(看着提交),我们手动将它们上传到开发环境。
  • 我们再次测试它,如果它工作正常,我们会将相同的文件上传到生产环境。

我们一直在思考与连接回购两种环境的源文件为好,但因为我不希望有git的文件夹,发布搞乱我的生产代码,我不链接。

我没有找到将我们的代码的测试副本推送到我们的GIT REPOSITORY并自动更新服务器的方式,无需手动上传文件或上传整个文件夹(主题,类别等)。 ..)通过FTP。

有没有人与prestashop和GIT合作,并有一个很好的自动化系统来完成所有这些工作? :)

非常感谢提前!

问候,

霍尔迪

回答

6

这里是我们使用的工作流程,这是(我猜)非常标准:

  • 一个混帐回购协议
  • preprod域
  • 督促域

所有的开发工作都在分支机构上完成,当它准备发货时,我们在主机上合并。 因此,在前期,我们拉我们正在工作的分支,在生产上我们只拉主人。 preprod和prod域位于同一台服务器上,它只是一个带有htaccess的子域来保护它。

我们不仅将它用于Prestashop,而且对于每一件事情它都很好用。

对于你想自动拉代码的部分,它必须是可能的(àla Heroku)。但对我来说最重要的是:你应该到处乱搞,忘掉FTP。这很容易,你确定你需要的一切都会更新。

+0

嗨romainberger。我们也使用分支机构。我对你的解决方案不了解的是:你的/ var/www文件夹中是否有.git文件?这是安全的吗? –

+0

回购不在同一台服务器上,但是,生产.git文件夹在这里。需要能够使用git。我不是一个信息安全专家,但我从来没有听说过.git文件夹是安全问题的来源。 – romainberger

0

我想你回答如果你的Web服务器上使用Apache

这需要存在于你的.htaccess文件不正确,以及:)

检查这个代码

RewriteCond %{HTTP:Authorization} ^(.*) 
RewriteRule . - [E=HTTP_AUTHORIZATION:%1] 

当然你需要有.htpasswd文件。

它的意思是任何文件或折叠器的名称开始形式“。”点,你需要先自动化,然后才能访问它。

查看更多有关现代重写这里:http://httpd.apache.org/docs/2.2/rewrite/access.html

我THIK这将是对你有用尔迪。 (Saludos de Bcn)

+0

好点。我们做了类似的事情,为“包含.git的所有网址”添加一个重定向:RedirectMatch permanent。* \。(git)/.* / –