Laravel 4和使用FTP部署应用程序的方式

时间:2014-02-25 18:30:48

标签: php apache ftp laravel

我对部署Laravel应用程序的方式有疑问。

我使用Composer在本地开发了我的应用程序。

现在,我已准备好将此应用程序部署到生产环境中。

我(目前)只使用FTP的生产服务器..

我看过这个论坛: Laravel Forum

但我认为这不正确..

我在服务器上创建了一个目录,例如:http://wwww.myserver.com/app

在/ app目录中,我(通过FTP)复制了所有文件......

但这不起作用......我必须改变什么?

3 个答案:

答案 0 :(得分:17)

让我们说你的文件。根文件夹是www

  1. 在共享主机(www之外)上创建一个名为laravel的文件夹,并将您的应用程序结构上传到此文件夹,公共文件夹除外。
  2. 将公用文件夹的内容上传到www文件夹
  3. 调整bootstrap / paths.php文件中的路径结构。
  4. 还要更改www / index.php文件中的路径以找到新的laravel文件夹。
  5. 完成。
  6. 以下文章中还有另外两个解决方案(我的一个也更详细):

    http://driesvints.com/blog/laravel-4-on-a-shared-host

答案 1 :(得分:0)

您是否尝试过http://wwww.myserver.com/app/public

如果您未配置bootstrap / paths.php和public / index.php,则您的网站应通过http://wwww.myserver.com/app/public打开。但您还必须在app / config / database.php

中配置数据库路径和凭据

在正常设置中,只有Laravel项目的“公共”文件夹的内容应放在“app”文件夹中。所有其他文件都保存在服务器根目录中的单独文件夹中。

本文介绍如何配置路径:http://myquickfix.co.uk/2013/08/hosting-laravel-4-on-cpanel-type-hosting-public_html/

答案 2 :(得分:0)

我做了部署我的Laravel 4应用程序的过程昨天由Sas Sam提出并且不需要安装Composer - 但是我可以看到为什么人们会这样做,因为使用ftp,使用Filezilla,我遇到的问题是在超过3000个文件中,它错过了 - 或者更确切地说是为四个php文件复制了“空文件”,包括Illuminate类(RedirectRequests.php)的一个主要类,导致应用程序在早期抛出错误。

当我意识到文件是空的时,我花了几个小时在Filezilla中检查每个文件(除了php文件之外还有很多文件,但只有空文件的php文件导致了问题)在我创建的Laravel文件夹中,交叉 - 使用我的本地安装来引用它们,将代码粘贴到总共四个“丢失”的php文件中,现在看起来工作正常。

所以也许直接在服务器上安装一个Linux安装的Composer然后重新安装相同版本的Laravel可能已经避免了这个问题,我一直遇到GoDaddy获得SSH访问我的项目的问题所以当选相反,我的项目是精细梳齿。只要您拥有所有文件,通过bootstrap.paths和public index.php文件正确引用,它就可以工作。