在没有根访问权限的情况下部署 Laravel 4 应用程序


Deploy Laravel 4 application without root access

我有一个域,但我没有root访问权限。我只能访问那个/home/bkhan06/public_html 文件夹。您能否告诉我如何在没有root访问权限的情况下部署应用程序。

事实上,你不需要任何东西,甚至不需要在你的服务器上安装作曲家:

1 - 将开发目录上的每个文件复制到 /home/bkhan06/public_html 。您可以使用FTP,SCP或RSYNC来做到这一点。你应该以这样的内容结束:

/home/bkhan06/public_html/
|    
+ app/
|   |   
|   + commands/
|   |
|   + config/
|   |
|   + ...(many other directories)
|                             
+ bootstrap/
|                             
+ vendor/
|                             
+ composer.json
|                             
+ server.php
|                             
+ ...(other files)

2 - 请您的域管理员将您的域文档根目录设置为 /home/bkhan06/public_html/public

3 - 要求您的域管理员使/home/bkhan06/public_html/app/storage可由Web服务器用户写入(如果是Linux,通常是www-data或httpd(

4 - 测试您的应用程序(或者,如果您已经知道哪些是缺少的模块,则首先执行步骤 5(

5 - 要求域管理员安装所有缺少的 PHP 模块(如 php5-mcrypt(

尝试使用可以帮助您将本地文件夹与服务器文件夹同步的程序,rsync 会为您执行此操作,但并非每个 FTP 客户端都能做到这一点。如果不这样做,下次需要部署应用时,需要很长时间才能再次复制所有内容。

为什么你不需要作曲家?因为它基本上下载包并将它们放在供应商目录中,所以,如果您将此目录上传到您的 Web 服务器,您根本不需要 Composer。

您不需要root访问权限,但您需要服务器上的帐户才能安装Composer。并进行其他相关更改,例如安装 php 模块等。