.htaccess - 在 .htaccess 中使用 ErrorDocument 403 时 URL 发生变化
问题描述
我编写了一个 .htaccess 文件,以确保始终将访问者重定向到 https 和 www。除此之外,我还为 404 错误添加了一个自定义 html 页面。
当访问者尝试访问被禁止的文件时,我希望他们看到我的自定义 404 消息,以免显示路径包含被禁止的文件。
这是问题所在。例如,在浏览器中写入“example-domain.com/.htaccess”(无 www 或 https)时,浏览器中地址字段中的 URL 将更改为“https://www.example-domain.com/missing”。 html”。但我希望它在显示我的 404 页面时说“https://www.example-domain.com/.htaccess”。
它适用于 404 错误。但是,当在地址字段中输入一个既触发 403 错误又满足我的 .htaccess 文件中的至少一个重写条件(缺少 https 和/或 www)的路径时,我遇到了上述问题。
这是 .htaccess 文件中的代码:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} ^example-domain.com [NC]
RewriteRule ^(.*)$ https://www.example-domain.com/$1 [L,R=301,NC]
ErrorDocument 403 /missing.html
ErrorDocument 404 /missing.html
此致
解决方案
推荐阅读
- docker - Dockerizing Go API 在不设置 git 项目 repo 的情况下无法工作
- android - 当我单击文本字段时,键盘隐藏文本表单
- winapi - Win32 ATL 应用程序没有为系统区域设置使用适当的本地化对话框
- c# - 迁移到生产环境时是否应该没有种子数据?EF 核心
- html - CSS:如何根据自己的大小而不是容器来调整图像的大小
- python - 格式化存储在存储桶中的 python 列表以使用 Bigquery 读取它
- algorithm - 将一个集合划分为两个子集,使总和的差最小并返回两个子集
- python - 如何找到具有o和x的正方形的反转
- postgresql - 如何检查我的数据是否在特定路径上
- node.js - 如何根据对文档本身中的值的操作来查询 Firestore