當訪問指向閃亮應用的頁面時,如myshinyapp.com/NoSuchPage.html,閃亮將返回「未找到」信息頁面。我想這是錯誤404頁面。閃亮的自定義錯誤頁面
如何用我自己的頁面替換這個「未找到」頁面?
謝謝。
當訪問指向閃亮應用的頁面時,如myshinyapp.com/NoSuchPage.html,閃亮將返回「未找到」信息頁面。我想這是錯誤404頁面。閃亮的自定義錯誤頁面
如何用我自己的頁面替換這個「未找到」頁面?
謝謝。
從the manual部分2.10:生成靜態頁面,例如目錄索引和錯誤頁面時
閃亮的服務器可以使用自定義模板。該功能使用
template_dir
指令進行控制,可以在全球範圍內應用,也可以應用於特定的服務器或位置。要利用此功能,您需要一個存放模板的目錄。在這個例子中,我們假設您使用的是
/etc/shiny-server/templates/
。在此目錄中,您將爲您的頁面放置handlebars-enabled
HTML模板。Shiny Server會嘗試找到一個特定的頁面以適應當前的需求 - 例如,如果遇到404錯誤,它將首先查看您是否提供了用於處理指定目錄中的404錯誤的特定模板(
error-404.html
)。如果它沒有找到這個文件,它會後退一步,看看你是否提供了一個通用的錯誤模板(error.html
)。如果在模板目錄中找不到合適的模板,它將回退使用隨Shiny Server提供的模板(並存儲在/opt/shiny-server/templates
中)。你可能已經注意到了,Shiny Server使用由最寬到最窄的連字符分隔的層次結構。所以所有的錯誤頁面都以錯誤開始。但是,404錯誤頁面的文件名會在連字符後添加一個附加元素(404):error-404
。預計所有文件將使用.html
擴展名。
請參閱@ hrbrmstr的答案,瞭解如何爲Shiny Server處理的頁面執行此操作。請注意,* shiny *(不是Shiny Server)也必須有時生成這些頁面(如果您在Shiny App中並且要求提供不存在的資源)。 Shiny尚未公開控制其內部錯誤頁面的方式。 –