自定义错误 403 页面 PHP

发布于 2024-12-23 16:46:56 字数 100 浏览 2 评论 0原文

我在一个目录中创建了一个 .htaccess,我不希望直接访问该目录中的文件。它起作用并触发 Apache 服务器的默认 403 页面(禁止访问!)。如何创建自定义 403 页面?谢谢!

I created a .htaccess inside a directory in which I don't want the files to be directly accessed. It works and fires the default 403 page (Access forbidden!) of the Apache server. How can I create a custom 403 page? Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

两相知 2024-12-30 16:46:56

.htaccess 文件中,您可以指定要作为默认 403 错误文档的文档。

ErrorDocument 403 /dir/file.html

这里的目录是相对于文档根目录的。

In your .htaccess file you can specify what document you want as your default 403 error document.

ErrorDocument 403 /dir/file.html

Here the directory is relative to the document root.

无风消散 2024-12-30 16:46:56

您可以执行如下操作:


#Rewrite URL's
RewriteEngine On
RewriteRule ^404/?$ errors/404.html [NC]

# Enable Error Documents
# (404,File Not Found) | (403,Forbidden) | (500,Internal Server Error)
ErrorDocument 404 /404
ErrorDocument 403 /404

这样做是打开 RewriteEngine,以便我们可以很好地重定向 url,然后我们使用 RewriteRule 定义 /404/ 或 /404 应重定向到自定义 404 页面。然后我声明 ErrorDocument 404 和 403 应重定向到 404 页面。我这样做是为了安全,因此用户不知道文件是否存在或者他们是否无权访问。

You can do something like the following:


#Rewrite URL's
RewriteEngine On
RewriteRule ^404/?$ errors/404.html [NC]

# Enable Error Documents
# (404,File Not Found) | (403,Forbidden) | (500,Internal Server Error)
ErrorDocument 404 /404
ErrorDocument 403 /404

What this is doing is turning on the RewriteEngine so we can redirect url's nicely, then we are defining using the RewriteRule that /404/ or /404 should redirect to the custom 404 page. I then state that the ErrorDocument 404 and 403 should redirect to the 404 page. I do this for security so, a user does not know whether or not a file exists or if they just don't have access.

为人所爱 2024-12-30 16:46:56

您还可以通过 ErrorDocumnet 在 .htaccess 文件中添加自定义内联错误消息,如下所示:

    ErrorDocument 403 '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>403 Forbidden</title></head><p>Sorry, access to this page is forbidden.</p></body></html>'

You can also add a custom inline error message via ErrorDocumnet in your .htaccess file as shown below:

    ErrorDocument 403 '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>403 Forbidden</title></head><p>Sorry, access to this page is forbidden.</p></body></html>'
只有影子陪我不离不弃 2024-12-30 16:46:56

没有一个对我有用。我必须编辑文件 /etc/apache2/conf-enabled/localized-error-pages.conf 并添加以下内容

ErrorDocument 403 "403, Ok!?"

None is worked for me. I had to edit the file /etc/apache2/conf-enabled/localized-error-pages.conf and add the following

ErrorDocument 403 "403, Ok!?"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文