首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何为404错误添加自定义错误页(未找到页)

如何为404错误添加自定义错误页(未找到页)
EN

Stack Overflow用户
提问于 2019-07-19 10:16:25
回答 1查看 868关注 0票数 0

我试图在我的网站中添加一个自定义404错误页面,用于“未找到的页面”或放置错误的URL。我有app.yaml文件,使用Go语言。我的网站基本上在中。我检查了每一个我认为与我的堆栈溢出问题有关的例子。但是在一些例子中,他们用Python或Java语言解释了示例,但我想在Go语言中找到。因为我的代码是用Go写的。

静态错误404页加载在服务器中,但当我填写错误的URL时,它会显示错误页,而不是我的自定义页面。我附上了截图,告诉你一切。

当前:- https://imgur.com/a/sGrSPyO“这是当前显示的”

要求:- https://imgur.com/a/TxL7NMR“这是我想要的”

我已经读过google应用引擎的app.yaml文档,并试图添加错误处理程序,但我没有找到任何解决方案。

app.yaml文件代码

代码语言:javascript
运行
复制
runtime: go
api_version: go1

handlers:

-url: /

  static_files: www/index.html

  upload: www/index.html

-url: /(.*)

  static_files: www/\1

  upload: www/(.*)

error_handlers: 

  -file: www/page-not-found.html* 

这里是更新的app.yaml文件:

代码语言:javascript
运行
复制
runtime: go

api_version: go1

error_handlers: 
  - file: /page-not-found.html

handlers:
- url: /
  static_files: www/index.html
  upload: www/index.html
- url: /(.*)
  static_files: www/\1
  upload: www/(.*)
EN

回答 1

Stack Overflow用户

发布于 2019-07-19 11:08:41

关于Go应用程序的app.yaml配置文件的文档可以在app.yaml配置文件上找到。

搜索页面上的error_handlers,看看如何定义它。它发出以下红色警告:

警告:确保错误响应文件的路径不与静态文件处理程序路径重叠。

你具体说明:

代码语言:javascript
运行
复制
-file: www/page-not-found.html*

这与静态处理程序路径之一重叠:

代码语言:javascript
运行
复制
-url: /(.*)
 static_files: www/\1
 upload: www/(.*)

这就是为什么您的自定义错误页面没有得到服务的原因。您必须将错误处理程序放在www文件夹之外(或者不使用整个www文件夹作为静态处理程序路径,重要的是它们不能重叠)。

备注:i链接到Go 1.12应用程序配置,因为您正在使用的Go 1.9已经失效,很快将不可用。然而,同样的情况也适用于关于自定义错误页的两个版本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57110273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档