我使用rails-api创建移动api,当用户访问api的url时,我得到了预期的#34; Welcome Aboard"页。我想要做的是删除它,如果用户尝试使用Web浏览器转到根URL,则只需向用户提供403页(或404)。
我知道我可以创建一个控制器(error_pages),然后将它与routes.rb中的方法(no_access)匹配,然后在views目录中有一个默认呈现的页面。
root 'error_pages#no_access' # in routes.rb
我假设有一种更简单的方法可以通过Rails魔术实现这一目标。
编辑:
我找到了这篇SO文章:
Where is the default "Welcome Aboard" page located in my app?
它声明从Rails 4开始,index.html不再位于public /目录中,因为它包含在gem中。
routes.rb文件中是否可以指向公共目录中的一个错误页面?
我尝试了以下操作但它不起作用:
root' public / 404.html'
我不想创建一个只指向错误页面的控制器,是否有更好的rails方式?
答案 0 :(得分:0)
只需删除public/index.html
即可。这将导致对根路径的请求的 404(未找到)响应。