如何使子域指向在根目录中安装了 Laravel 的自定义文件夹?

Posted

技术标签:

【中文标题】如何使子域指向在根目录中安装了 Laravel 的自定义文件夹?【英文标题】:How to make subdomain point to a custom folder with Laravel installed in the root? 【发布时间】:2022-01-05 21:24:01 【问题描述】:

我在 public_html 文件夹中安装了 Laravel,我有一个子域 x.example.com,当我打开它时,我得到 This site can’t be reached,当我导航到 example.com/x 时它工作。如何使子域指向或映射到此路径并忽略 Laravel 路由?我试过了

RewriteCond %HTTP_HOST ^x\.example\.com
RewriteCond %REQUEST_URI !^/x/
RewriteRule (.*) /x/$1 [L]

在 Laravel 重定向之前

# Redirect Trailing Slashes If Not A Folder...
RewriteCond %REQUEST_FILENAME !-d
RewriteCond %REQUEST_URI (.+)/$
RewriteRule ^ %1 [L,R=301]

# Handle Front Controller...
RewriteCond %REQUEST_FILENAME !-d
RewriteCond %REQUEST_FILENAME !-f
RewriteRule ^ index.php [L]

但是没用

【问题讨论】:

【参考方案1】:

您可以将您的路由或路由组指向子域,如下所示:

Route::domain('x.example.com')->group(function()
    Route::get('/', fn() => 'It works');
);

【讨论】:

以上是关于如何使子域指向在根目录中安装了 Laravel 的自定义文件夹?的主要内容,如果未能解决你的问题,请参考以下文章

如何查看 Laravel 中安装了哪个 Vue 版本以及如何更新?

如何在 Cpanel 的子域 lumen/laravel 上安装免费 SSL?

如何在子域共享主机上安装 laravel

如何判断 Linux 机器上的目录是不是在 Java 中安装了外部文件系统?

Laravel页面加载问题连接已重置

Laravel 5,子域路由,带可选参数