web dev - 服务器未指向 laravel 7.3 public,显示 'Index of /' 页面

web dev - server not pointing to laravel 7.3 public, displaying 'Index of /' page

我使用

在工作服务器上的新 public_html 目录中创建了一个新的 laravel 项目
composer create-project laravel/laravel public_html

我已经创建了 .vue 组件和控制器来在访问网站时显示主页,但显示的是:

这是用于处理请求的 web.php 文件:

<?php

use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', [HomepageContoller::class, 'index'])
   ->name('home');

这里是 HomepageController class:

<?php

namespace App\HTTP\Controllers;

use Inertia\Inertia;

class HomepageContoller extends Controller {

    public function index() {
        return Inertia::render('Homepage/Index');
    }
}

?>

这是 .vue 组件:

<template>
  <div>
    <h1>Brite Visual Products<h1>
  </div>
</template>

<script>
export default {
  metaInfo: { title: 'Brite Visual Products' },
}
</script>

一切都在它所属的地方,自从 composer create-project 调用

以来没有任何移动

更新:

似乎问题只是网络根目录指向 public_html/ 而不是 public_html/public/

为了解决我需要在我的工作服务器上拥有更高权限的问题,post 稍后会有一个完整的解决方案

编辑以下文件

vi /var/cpanel/userdata/username/domain.com

将“username”替换为您的 cPanel 帐户用户名,将“domain.com”替换为您的主域名,将“subdir”替换为您的新目录。

在此文件中找到以下两行。

documentroot: /home/username/public_html
path: /home/username/public_html/cgi-bin

修改这两行,将您的主域的文档根目录更改为“public_html”目录中的子目录。

documentroot: /home/username/public_html/subdir
path: /home/username/public_html/subdir/cgi-bin

如果主域安装了 SSL 证书,请按照上述相同的方式编辑以下文件。

vim /var/cpanel/userdata/username/domain.com_SSL

更改后保存文件,然后删除主域的缓存文件。

rm -vf /var/cpanel/userdata/username/domain.com_SSL.cache

运行 以下脚本更新用户数据缓存并重建 apache 配置文件。

/scripts/updateuserdatacache
/scripts/rebuildhttpdconf

重新启动 Apache 服务器以加载更改。

service httpd restart