2011-10-16 34 views
1

我正在开发一个简单的网站(在VPS中)使用PHP。 我的问题是:如何使用安全协议发送我所做的更改? 目前我使用scp但我需要一个软件来检查文件是否更改,如果是将它发送到服务器。如何自动上传更改?

建议?

回答

1

如果您可以完全访问您的VPS,那么您可以通过ssh和webdav在本地将远程主目录挂载为普通文件系统。之后,您可以在本地进行电脑编辑。任何更改都应该自动上传。

看一看这个相关article

0
  • FTP(S):在目标上设置一个FTP服务器以及SSL证书(个人证书足够好)。

  • SSH:你可以通过SSH本身传递文件,但我发现它最不可靠(imho)。

  • 股票:您可以与本地计算机共享一个文件夹(与其他人一样)。如果不难诊断断开连接问题,这将是完美的解决方案。我已经经历了这一点,这远非愉快的经历。

  • Dropbox:在您的VPS和本地PC上的保管箱客户端上设置保管箱服务器。使用Dropbox的(或类似的方法,如SkyDrive中,icloud的..),也有一些额外优势,例如,版本控制,恢复,冲突检测...

总而言之,我认为FTPS方式是最可靠和流行的一个我曾经用过的。通过SSH,它在大约2天后使用它导致了几个问题。磁盘共享方法导致了我几个问题,主要是因为它需要你对协议有所了解。 虽然设置方法有点费时,但它仍然是一个很好的解决方案。不过,我只会将它用于较大的客户,而不是平均的宠物爱好网站:)

再次,这只是从经验。

0

你也可以使用Subversion来做到这一点,虽然安装过程可能需要一点时间。

你基本上创建了一个Subversion版本库并提交了所有的代码。然后在您的Web服务器上,使根目录成为该存储库的签出。

创建一个运行svn update命令的脚本,并将其设置为提交后挂钩。从本质上讲,每当你从工作站进行提交时都会执行该脚本。

所以总之,你会......

  1. 更新你的代码在本地
  2. 通过颠覆提交(使用龟SVN,它很容易和简单易用)
  3. 自动,提交将触发服务器上提交后钩和运行SVN更新命令来同步根目录中的代码。

当然,你将不得不隐藏所有的.svn目录使用.htaccess文件公众(提供你使用Apache)的。

我知道这是行得通的,就像我过去所做的那样。

这个选项的美妙之处在于你也可以得到一个二合一的选择。源版本和简单的更新。如果你犯了一个错误,你也可以很容易地恢复它们。