将laravel项目上传到cPanel

时间:2017-02-19 10:29:13

标签: php laravel-5.2 cpanel

我试图将我的laravel项目上传到cPanel。但到目前为止,它似乎并没有起作用。  我已将我的项目中的以下目录和文件移动到目录' lavravel'在根。

app/
bootstrap/
config/
database/
resources/
storage/
artisan
composer.json
composer.lock
.env

将文件从我的公共文件夹移动到public_html  现在我的目录看起来像这样。 Directory

我对以下文件进行了更改。 的 laravel /引导/ app.php

/*
|--------------------------------------------------------------------------
| Public Path
|--------------------------------------------------------------------------
|
| Set the path to the Laravel "public" directory so that any files/packages
| that use app('path.public') to get the "public" path find the right path.
| DO NOT include a trailing slash on the path.
|
*/
$app->bind('path.public', function ()
{
    return __DIR__.'/../../public_html';
});

的public_html / index.php的

require __DIR__.'/../laravel/bootstrap/autoload.php';
$app = require_once __DIR__.'/../laravel/bootstrap/app.php';

但是,它似乎不起作用。它显示一个空白页面。正如您可以通过此URL看到的那样。 nepalride.com

3 个答案:

答案 0 :(得分:0)

你应该看看Laravel

上传文件后,请务必在storagebootstrap/cache文件夹中设置正确的权限。

此外,您需要运行composer install来安装Laravel所需的供应商软件包。您上传的laravel文件夹没有vendors文件夹。

查看错误日志,您将看到遇到的所有问题。

答案 1 :(得分:0)

如果您拥有ssh访问权限,最简单的方法是在您的应用中创建一个laravel目录。然后:

rm -rf public_html
ln -s laravel/public public_html

这会删除当前的public_html(确保在运行之前没有任何内容),并创建一个从public_html到你的应用程序公共文件夹的符号链接。

答案 2 :(得分:-1)

手动配置index.php会带来很多问题,因此配置它的正确方法是使用ssh或终端访问。首先,请确保您具有外壳或终端访问权限(通常在共享主机帐户中不可访问)。 打开终端并检查php版本

$ php -v

确保php版本高于laravel应用所需的版本。如果没有,请将其更改为最新的可用版本。 配置Shell环境以使用作曲家

$ echo 'alias composer="php -d allow_url_fopen=On /home/username/composer.phar"' >> ~/.bashrc

$ source ~/.bashrc

之后,在您的cpanel帐户上下载并安装composer

$ cd ~

$ curl -k -O https://getcomposer.org/installer

$ php -d allow_url_fopen=On installer

确保已安装

$ composer -v

使用ftp或git转到上传的项目并运行

$ composer install

安装依赖项

确保已正确配置.env文件

运行 $ php artisan key:generate

运行迁移 $ php artisan migrate

确保您具有正确的访问权限 $ chmod -R 775 storage

优化您的应用 $ php artisan optimize

通过运行使应用可公开访问 $ mv public_html public_html_old

创建符号链接 $ ln -s /home/user/app/public /home/user/public_html

一切都应该很好,并且应用程序应该正在运行。