将文档根目录更改为 cpanel 中的子文件夹

Change document root to subfolder in cpanel

我有一个使用 Create React App 创建的 React 应用程序。我需要切断来自 /build/ 的文件。如何更改为 root 到 /build?我已经推送了整个文件,即 src,public,这是 git。如果我知道的话,id git 只是构建文件夹,但似乎为时已晚(deploybot、bitbucket 等)。

我创建了一个 .htaccess 文件

RewriteEngine on
RewriteCond %{HTTP_HOST} ^web.com/$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.web.com/$
RewriteCond %{REQUEST_URI} !build/
RewriteRule (.*) /build/ [L]

但是当我到达 / 时没有任何效果。我看到的只是构建文件夹、src 等

您可以使用这条规则:

RewriteEngine on

RewriteCond %{HTTP_HOST} ^(?:www\.)?web\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/build/
RewriteRule (.*) /build/ [L]

您的情况:

RewriteCond %{HTTP_HOST} ^web.com/$ [NC,OR]

有一个尾部斜线,它永远不会成为 HTTP_HOST 变量的一部分,并且有一个未转义的点可以匹配任何字符。

您也可以像我的回答那样将 www. 设为可选,从而将两个条件合二为一。