前/后部署脚本来改变文件的所有权?

我们正在专用服务器上运行CentOS 5.6。 我正在计划使用BeanstalkApp(www.beanstalkapp.com)部署我们的Magento商店更改,它提供了事先和事后部署钩子。

我的服务器用户名(在这个例子中)是USER123,但这些文件需要由APACHE拥有才能正常运行。 这是我的服务器主机的build议。

我试图实现的是在部署之前在服务器上自动运行以下命令:

sudo chown -r USER123: /var/www/vhosts/domainname.com/httpdocs/store/ 

部署之后接下来是以下内容:

 sudo chown -r APACHE: /var/www/vhosts/domainname.com/httpdocs/store/ 

所以我有两个问题:

1)上述命令是否工作,还是需要切换到所显示的目录,然后使用././而不是上面显示的确切path?

2)我如何将它变成BeanstalkApp预先部署后可以触及的“脚本”?

任何指针将不胜感激!

你将需要使用-R而不是你的例子中显示的-r 。 除此之外,你应该好好去。

要制作脚本,然后使用你最喜欢的编辑器创build一个这样的文件

 #!/bin/bash sudo chown -R USER123: /var/www/vhosts/domainname.com/httpdocs/store/ 

将文件保存为例如predeploy然后将权限设置为755

 chmod 755 predeploy 

对你的postdeploy脚本也一样。 你怎么把他们挂在豆茎上,我不能帮忙