如何在共享主机上部署laravel 4.2?

时间:2014-09-08 12:44:45

标签: php laravel-4 shared-hosting

我使用laravel 4.2.8开发了一个应用程序,现在我无法部署它。我按照这个答案https://stackoverflow.com/a/16683938/3153380但是没有用。我收到一个白色屏幕,标题返回500内部服务器错误状态。

我读到了laravel 4.2设置共享主机有点棘手这是真的吗?我似乎找到了一个有效的解决方案,所以那些已经部署过4.2的人请帮忙。我的文件夹结构如下所示

  

根/      的 laravel_base /          应用程序/          ...      的的public_html /                  的 siteroot /                           资产/                           包/                           上传/                           的index.php                           ...   有什么指针吗?

5 个答案:

答案 0 :(得分:18)

首先确保您的共享主机运行php> = v5.4。第二步尝试按照以下步骤操作:

  1. public_html/www/之外创建一个文件夹。例如:project/
  2. 将laravel应用中的每个文件夹和文件(公用文件夹除外)复制到project/文件夹
  3. public/文件夹的内容复制到public_html/www/ (.htaccess也必须在那里)
  4. 在public /中找到index.php文件并更改以下路径:

    一个。 autoload.php的路径

    require __DIR__.'/../bootstrap/autoload.php';
    

    require __DIR__.'/../project/bootstrap/autoload.php';
    

    start.php的路径

    $app = require_once __DIR__.'/../bootstrap/start.php';
    

    $app = require_once __DIR__.'/../project/bootstrap/start.php';`
    
  5. 毕竟它应该有效。

答案 1 :(得分:4)

我做了类似于@Helder Lucas的事情 - 我还必须编辑bootstrap / paths.php文件:

# change: 'public' => __DIR__.'/../public',
'public' => __DIR__.'/../../public_html',

我创建了一个脚本来为共享托管环境设置laravel项目。这是要点:https://gist.github.com/meganlkm/74dba6c4350ed58bf7bb

答案 2 :(得分:0)

在OpenShift Online上运行Laravel 4/5非常容易。对于遇到托管问题的其他人,请查看:https://hub.openshift.com/quickstarts/115-laravel-5-0

答案 3 :(得分:0)

我只是在我的共享主机上的/文件夹中添加一个新文件夹

www.domain.com

我添加一个名为

的子文件夹

public/

这条路径看起来像这样

/www.domain.com/public/

从CPANEL我将域名根文件夹链接到

www.domain.com/public/

然后我只需上传

中的laravel应用程序

/www.domain.com

适用于laravel 4.2和5。 并且没有安全漏洞,因为根域文件夹位于laravel应用程序的公共文件夹中,无需更新.htaccess文件。

它只是有效。

答案 4 :(得分:0)

尝试使用.htaccess

public_html中,添加.htaccess转发请求

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{REQUEST_URI} !^yoursite.com/public
    RewriteRule ^(.*)$ yoursite.com/public/$1 [L]
</IfModule>

public_html
├── yoursite.com    <-------- laravel project
├── .htaccess       <-------- this file
相关问题