2014-05-07 138 views
2

当访问指向闪亮应用的页面时,如myshinyapp.com/NoSuchPage.html,闪亮将返回“未找到”信息页面。我想这是错误404页面。闪亮的自定义错误页面

如何用我自己的页面替换这个“未找到”页面?

谢谢。

+0

请参阅@ hrbrmstr的答案,了解如何为Shiny Server处理的页面执行此操作。请注意,* shiny *(不是Shiny Server)也必须有时生成这些页面(如果您在Shiny App中并且要求提供不存在的资源)。 Shiny尚未公开控制其内部错误页面的方式。 –

回答

3

the manual部分2.10:生成静态页面,例如目录索引和错误页面时

闪亮的服务器可以使用自定义模板。该功能使用template_dir指令进行控制,可以在全球范围内应用,也可以应用于特定的服务器或位置。

要利用此功能,您需要一个存放模板的目录。在这个例子中,我们假设您使用的是/etc/shiny-server/templates/。在此目录中,您将为您的页面放置handlebars-enabledHTML模板。

Shiny Server会尝试找到一个特定的页面以适应当前的需求 - 例如,如果遇到404错误,它将首先查看您是否提供了用于处理指定目录中的404错误的特定模板(error-404.html)。如果它没有找到这个文件,它会后退一步,看看你是否提供了一个通用的错误模板(error.html)。如果在模板目录中找不到合适的模板,它将回退使用随Shiny Server提供的模板(并存储在/opt/shiny-server/templates中)。你可能已经注意到了,Shiny Server使用由最宽到最窄的连字符分隔的层次结构。所以所有的错误页面都以错误开始。但是,404错误页面的文件名会在连字符后添加一个附加元素(404):error-404。预计所有文件将使用.html扩展名。