【问题标题】:How to upload correctly addon domain with CPanel如何使用 CPanel 正确上传插件域
【发布时间】:2020-02-03 21:32:51
【问题描述】:

我已经使用 CPanel 将 laravel 项目部署到服务器。我已将 websiteA 中的所有公共文件转移到 public_html。它工作正常。目录如下所示。

/home/tuturu
->public_html
->websiteA
    ->app
    ->vendor
    -> ...

现在我正在尝试将插件域 websiteB 添加到同一台服务器。作为一个 laravel 项目并希望它指向公用文件夹,我看到根文档是public_html/websiteB/public。现在,目录如下所示:

 /home/tuturu
->public_html
    ->websiteB
        ->app
        ->vendor
        ->public
->websiteA
    ->app
    ->vendor
    -> ...

我还将公用文件夹中的 index.php 更改为:

require __DIR__.'/../public_html/websiteB/vendor/autoload.php';
$app = require_once __DIR__.'/../public_html/websiteB/bootstrap/app.php';

但是当我转到 websiteB 时,它给出了 HTTP 500 错误。提前致谢。

【问题讨论】:

  • 将代码放在 public_html 中是一种不好的做法。您应该使用“附加域”并将路径指向您的 index.php 文件所在的文件夹。
  • 问题是,public_html里面已经存储了网站A的所有公共文件,例如htaccess和index.php。我应该将 websiteB 的公共文件放在哪里? @DmitriSandler
  • 每个站点都应该有自己的“附加域”和自己的文件夹。您可以在您的主目录(包含邮件、php、public_ftp、public_html 等的目录)中创建文件夹 websiteA 和 websiteB。如果您有大量站点,您可能会创建一个更复杂的文件夹结构,以便您可以轻松识别(分组)您的站点。只是不要把它放到 public_html 中。
  • uwh,所以公用文件夹中的文件不必放在 public_html 中?我可以将根文档设置为指向公用文件夹,这样可以吗?
  • Laravel 的公用文件夹应该保留在应用程序中,因为公用文件夹中的文件使用 Laravel 目录结构中其他文件的相对路径。

标签: php laravel server cpanel


【解决方案1】:

在您的主目录中创建一个文件夹,例如 my_websites:

将您的两个网站上传到此文件夹:

配置您的“附加域”以指向每个站点的 Laravel 公用文件夹:

请记住,Linux 系统上的路径区分大小写。

【讨论】:

  • 我无法将文档根指定到 /home/tuturu .. 文档根默认为 /public_html/
  • 这仅适用于主域。您可以添加“附加域”或“子域”吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-01-09
  • 2012-01-20
  • 1970-01-01
  • 2017-01-17
  • 1970-01-01
  • 2020-10-30
  • 1970-01-01
相关资源
最近更新 更多