【问题标题】:How to host laravel web application in Shared Hosting如何在共享主机中托管 laravel Web 应用程序
【发布时间】:2016-11-21 04:28:02
【问题描述】:

我已经使用 Laravel 5.8 开发了一个 Web 应用程序,现在我想将它托管到一个共享的 Web 服务器上。文件夹结构和具体配置是什么。

  1. 我创建了一个名为 laravel 的文件夹,并将所有项目文件夹保存在该 laravel 文件夹中,项目的公用文件夹除外。我将public文件夹的所有文件和文件夹都保存在public_html文件夹中。

  2. 我已经配置了public_html文件夹的index.php文件如下。

一个。 require __DIR__.'/../bootstrap/autoload.php'; 到,

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

b. $app = require_once __DIR__.'/../bootstrap/app.php'; 到,

$app = require_once __DIR__.'/../laravel/bootstrap/app.php';
$app->bind('path.public', function() {
    return __DIR__;
});

*** 我自己解决了这个问题。

第 1 步:我从 cPanel 找到并安装 laravel 应用到 public_html 文件夹中

第 2 步:然后我将所有内容移到名为 laravel 的文件夹中,public 文件夹除外>

第 3 步:然后我将所有内容从 public 文件夹移动到 public_html 文件夹

第 4 步:后来我按照上面的第 2 步进行操作

第 5 步:然后我更改了 storage 文件夹的文件夹权限,它工作正常。

第 6 步:最后,我将本地服务器中开发的应用程序的所有其他文件和文件夹保存到这个新安装的应用程序目录中

【问题讨论】:

  • 您好 Uzzwal Dhali,您应该提供更多详细信息。您的托管服务提供商和其他详细信息。如果您正在寻找新服务器,您可以查看A2HOSTING。我使用相同的托管服务提供商托管了我的 Laravel 项目。
  • 查看 idhali.com 上的网站 - 该网站现已上线。但是登录时什么都没有显示。我需要配置任何路由吗?或其他任何东西!

标签: laravel


【解决方案1】:

我在部署时遇到了类似的错误,然后我注意到路径有点错误:

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

前导/ 更改为驱动器的根目录,然后.. 不执行任何操作。删除两个 require __DIR__ 上的领先 / 为我修复了它。

【讨论】:

    【解决方案2】:

    Laravel 默认结构总是更好。这取决于您的托管地点。 如果您的托管场所支持 laravel 框架,则使用默认结构自动将公共单词重定向到项目路径。 或者如果您需要忽略 URL 中的公共字词

    • 将文件中的所有文件复制到一个文件夹 ex:psl 中
    • 复制公用文件夹粘贴到文件夹目录
    • 在两个地方更改 index.php 文件

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

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

    【讨论】:

      【解决方案3】:

      如果您无法提供指向共享文件夹的 Web 根目录的链接!

      1. Public 文件夹以外的所有文件夹都移动到更高级别,例如文件夹 laravel - http://prntscr.com/bryvu7 (也许在托管您的文件夹 - 公共。不是文件夹 public_html)

      2. 更改文件 publi_html/index.php 线

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

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

      和线

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

      $app = require_once __DIR__.'/../laravel/bootstrap/app.php';
      $app->bind('path.public', function() {
          return __DIR__;
      });
      
      1. 更改文件 laravel/server.php 线

        require_once __DIR__.'/public/index.php';

      require_once __DIR__.'/index.php';
      

      【讨论】:

      • 检查网站idhali.com - 该网站现已上线。但是登录时什么都没有显示。我需要配置任何路由吗?或其他任何东西!
      猜你喜欢
      • 2014-03-26
      • 2020-10-22
      • 2014-09-06
      • 1970-01-01
      • 2016-12-13
      • 2023-01-07
      • 1970-01-01
      • 1970-01-01
      • 2017-08-06
      相关资源
      最近更新 更多