.htaccess 保留页面而不更改站点 URL

.htaccess holding page without changing site URL

如果我有一个站点 mysite.com 并且在该站点的根目录中有一个 /holding/index.html 文件,我该如何编写 .htaccess 来显示索引在地址栏中不显示 URL mysite.com/holding/ 的保留页面。

这是我的目录结构:

public_html
└── .htaccess
└── holding
    └── index.html
    └── assets (css, img)
└── email-signature
    └── assets (img)

我的 .htaccess 目前是:

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/email-signature/assets/logo.jpg$
RewriteCond %{REQUEST_URI} !^/email-signature/assets/spacer.gif$
RewriteCond %{REQUEST_URI} !^/holding/(.)*$ [NC]
RewriteRule ^(.*)$ /holding/ [R=302,L]

但这在地址栏中显示 mysite.com/holding/ ...我希望它保持 mysite.com 但仍显示保留页面索引。这可能吗?

需要在 mysite.com/email-signature/assets/... 访问电子邮件签名资产(我还希望不必在 .htaccess 中指定每个文件,而只需通配符 [=18] 中的所有 jpg、png、gif 文件=] 无障碍)。

提前致谢。

您可以将您的规则重构为:

RewriteEngine On

RewriteCond %{REQUEST_URI} !^/email-signature/ [NC]
RewriteRule !^holding/ /holding/ [NC,L]
  • 删除 R=3xx 标志以避免外部重定向
  • 将此添加到页面 HTML 部分的正下方:<base href="/holding/" /> 以解析 css/js/images 等的相对路径