- 浏览: 216947 次
- 性别:
- 来自: 绍兴
文章分类
最新评论
-
112703013:
你好, 想问个问题 就是我这边上传一个zip文件 大概有100 ...
rails文件上传下载和删除 . -
chen_miao:
qplovechinese 写道 很好!
3q
simple jQuery date-picker plugin 使用 -
qplovechinese:
很好!
simple jQuery date-picker plugin 使用
What’s the 404 error pages and the page role?
The 404 error pages’mean
404是http协议所定义的一种协议名称,也可说是一种形为,即 服务器找不到请求的网页。例如,对于服务器上不存在的网页经常会返回此代码。从某种意义上来讲,只是一种名称。当然,http协议还规定了其它多种协议名称,最常用500。
百度百科:404是W3C规定的HTTP状态码中的一种错误,是WWW网站访问比较经常出现的错误。最常见的出错提示:404 NOT FOUND。404页面就是当用户输入了错误的链接时,返回的页面。404页面的目的是:告诉浏览者其所请求的页面不存在或链接错误,同时引导用户使用网站其他页面而不是关闭窗口离开。
The page role
告诉浏览者其所请求的页面不存在或链接错误,同时引导用户使用网站其他页面而不是关闭窗口离开。
How to make 404
First :use the apache server
需要准备:
1,自定义的404页面,自己设计,仅能使用后缀名为html的页面
2,找到apache运行的配置文件httpd.conf
3, 修改后需要重启apache服务,因此请提前做好准备
发散思维:
1,可以自定义500的错误信息提示,而不是将异常简单的抛出
2, 将各种错误信息进行客制化,既安全又显得友好。
步骤:
1,将自定义的404页面部署到apache的根目录下(htdocs下面)
需要通过浏览器确认该页面是否可以正常显示,路径是否正确。
该处不成功,请不要进下面的步骤。
验证网页是否可以正常显示:
2,修改httpd.conf配置文件
#ErrorDocument 404 /404.html 去掉# 该页面默认放置在根目录下面
可以修改404.html的名称为 xxxx.html(xxxx为合法的任意名称)
如果找不到该项,可以在文本中搜索404即可。
另外一种不推荐的实现形式:ErrorDocument
ErrorDocument 404 (注释2:不推荐的原因)
3,在和系统和网站管理员协调之后重启apache服务。
正常情况下,重启apache服务可在瞬间完成(五秒钟之内)
不正常时
找一下AllowOverride看看,把AllowOverride None改为AllowOverride All
设AllowOverride All后,建议在网页根目录用.htaccess文件控制
.htaccess内容如下
ErrorDocument 404 /404.html
注意:
1. 切记不要将404错误转向到网站主页,否则可能会导致主页在搜索引擎中消失。如果一个 404 页面的内容小于 512b,IE 会认为该 404 页面不够友好,在 IE 下将不会成功返回该 404 错误页面。
2. 切记不要使用绝对URL。例如:http://www.yaiba.net/404.html。正常情况返回的是 404 状态码,而使用URL形式则返回的是 200 状态码。
Use rails code
使用rails code 方法很多种,有自定义方法加路由控件
http://brian.pontarelli.com/2007/01/14/handling-rails-404-and-500-errors
http://dev.mensfeld.pl/2010/01/handling-custom-404-and-500-errors-in-rails-2/
大概过程:
l Edit your app/controllers/application.rb file and add some methods
l Edit config/routes.rb
l Edit config/environments/development.rb
最终总结:大都数类似方法都用到ActionController::UnknownAction
意思为全局捕捉。
直接用以下三点:
Edit in application with these code
rescue_from ActionController::UnknownAction, :with => :render_not_found
def render_not_found
render :template => "/error_pages/rescue_404.html.erb", :status => 404
#注意 render :template =>时,page大于1024b,否则在IE中会显示IE自己的HTTP 404 page,改成redirect_to 不会出现
end
路由:map.connect '*path', :controller => ' error_pages ', :action => ' rescue_404' unless ::ActionController::Base.consider_all_requests_local==false
Or map.connect '*path', :controller => ' error_pages ', :action => ' rescue_404'
注意路由可以不配制
注:config.action_controller.consider_all_requests_local = true
表示用户的浏览器上可以看到所有异常错误堆栈。
rescue_from Exception, :with => :render_error
#500 页面错误
rescue_from ActiveRecord::RecordNotFound, :with => :render_not_found
#rails记录无
rescue_from ActionController::RoutingError, :with => :render_not_found
#rails路由出错
rescue_from ActionController::UnknownController, :with => :render_not_found
#rails controller出错
# customize these as much as you want, ie, different for every error or all the same
rescue_from ActionController::UnknownAction, :with => :render_not_found
# rails action出错
发表评论
-
require,include,load,extend的用途和区别
2013-03-01 22:47 986这四个方法还是很好玩很有用,也是比较容易混的。 ... -
ruby 标准类型总结
2013-02-01 16:45 1255一、数字 Ruby支持整数 ... -
RMagick 简介
2013-01-18 20:38 1426RMagick 是一个将 Ruby 语言绑定到 ImageM ... -
ARP欺骗功能
2013-01-12 22:47 1166一、设置前准备 当使用了防止ARP欺骗功能(IP和 ... -
淘宝开源编辑器KISSY Editor
2013-01-04 16:46 2392KISSY Editor 是开源项目 KISSY ... -
Rails创建定时任务
2012-12-10 10:21 1874Task & Rexcel 最终生成的报 ... -
Ruby on Rails页面缓存 实践
2012-12-05 11:02 1082三种方式 Page Caching, Action ... -
rails缓存学习
2012-11-27 16:38 1916FORM:http://kenbeit.com/tag/ ... -
Ruby on Rails 简单页面缓存
2012-11-16 17:28 1243三种方式 Page Caching, Action Ca ... -
Ruby写入Excel文件 插件方法
2012-11-01 16:21 1536spreadsheet插件(主要是excel生成写入数 ... -
RUBY操作EXCEL文件
2012-10-31 17:05 1429使用ruby来操作excel文 ... -
Ruby on Rails的session和session存储方案
2012-10-18 17:42 1306session:页面间的信息保存手段。使用:赋值 ses ... -
Ruby程序打包成可执行文件的工具 - RubyScript2Exe
2012-09-19 21:28 2288RubyScript2Exe能够将你的Ruby应用程序转成一个 ... -
rails中实现kindeditor中的图片上传
2012-09-14 16:10 1664FROM: http://blog.sina.co ... -
js 彷excel 键盘上下左右移动
2012-09-03 19:11 3054思路假设初始坐标为(0,0)首先要算出表格的最大最小坐标 即( ... -
ruby Hash 总结
2012-08-31 18:51 63311. 如何创建Hash? x = Hash.newx = { ... -
ruby inject,循环计算优化
2012-08-27 16:51 1336From:http://blog.jayfields.com/ ... -
jquery 图表插件highcharts & highstock
2012-08-23 14:43 11226Highcharts是纯JavaScript编写的图表库,提 ... -
rails or ruby 中 fields_for 提交方式
2012-08-20 20:10 1646Project这个Model的new表单,我们需要在创建Pro ... -
Rails中导出excel的快速简便的方法
2012-07-31 15:51 1101controller def to_e ...
相关推荐
在Rails应用中,我们还可以使用`form_for`和其他Rails助手来处理表单提交,以及`render`和`redirect_to`来管理视图和路由。 最后,`Rails应用中MongoDB+MySQL杂交`的话题意味着在同一个应用中同时使用MongoDB和...
在控制器中,我们会定义动作(actions)来处理HTTP请求,并通过`render`或`redirect_to`方法决定响应内容。视图则包含HTML和erb代码,用以展示数据。 至于论文.docx文件,可能包含了对整个实例开发过程的详细分析、...
Ruby代码 代码如下:if @user.update_attributes(:password => params[:user][:password]) flash[:notice] = ‘密码修改完成’ redirect_to :action => ‘index’ else redirect_to :action => ‘change_pass’, :id ...
redirect_to @user, notice: 'User was successfully created.' else render :new end end private def user_params params.require(:user).permit(:name, :email, :avatar) end ``` **Paperclip的高级...
Rails提供了许多内置辅助方法,如`redirect_to`和`render`,帮助开发者管理请求流程。 4. **路由(Routing)**:Rails的路由系统将URL映射到控制器的特定动作上,确保每个URL都能正确触发相应的处理逻辑。开发者...
找不到指定的模块。... 您可能感兴趣的文章:Ruby rails 页面跳转(render和redirect_to)Rails link_to 详解rails常用数据库查询操作、方法浅析学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake,
redirect_to new_user_registration_url end end end ``` 最后,确保在routes.rb文件中添加Omniauth回调路由: ```ruby devise_for :users, controllers: { omniauth_callbacks: 'omniauth_callbacks' } ``` ...
format.ext_json { render :update => { :page => redirect_to(posts_path) } } else format.ext_json { render :json => @post.errors.to_json, :status => :unprocessable_entity } end end end ``` #### ...
1.将.rb文件和.rhtml文件都保存为utf-8格式; 2.在/app/Controller/application.rb中增加... 您可能感兴趣的文章:Ruby rails 页面跳转(render和redirect_to)学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake, rail
将您的“ link_to”行切换为“ detour_to”,并将您的控制器“ redirect_to”切换为“ back_or_redirect_to”,以允许用户从其来访者返回。 概要: 在视图中: detour_to controller: :my_models, action: :...
Rails 2.0中,控制器继承自ActionController基类,提供了许多方便的方法,如`redirect_to`和`render`。 3. **模型(Model)** 模型代表数据库中的数据,通过ActiveRecord库实现,允许开发者使用Ruby代码操作数据库。...
redirect_to root_path else render :new end end ``` 在生产环境中,你需要配置SMTP服务器来实际发送邮件。这通常在`config/environments/production.rb`中进行: ```ruby config.action_mailer.delivery_...
redirect_to sessions_new_path else render "new" end end private def user_params params.require(:user).permit(:username, :password, :password_confirmation) end end ``` ##### 3. 设计注册界面 ...
redirect_to :protocol => 'https://' unless request.ssl? end end ``` 4. **处理回退**:某些浏览器或代理服务器可能不支持SSL,这时需要处理回退情况。在`config/routes.rb`中,可以使用`constraints`来实现...
redirect_to root_path, alert: "身份验证失败:#{params[:message].humanize}" end end ``` 至此,我们已经完成了大部分工作。为了在视图中添加Facebook登录按钮,编辑`app/views/devise/shared/_links....
redirect_to videos_path, notice: '视频已上传,正在转换。' else render :new end end ``` 注意,这只是一个基本的示例,实际的生产环境中需要处理更多细节,如错误处理、进度跟踪、文件大小限制等。同时,...
- 尽可能少地在控制器中创建实例变量,使用`render`或`redirect_to`结束动作。 6. **模型**: - 遵循ActiveRecord的约定优于配置原则,例如,表名通常为复数形式,如`users`。 - 使用`attr_accessor`来定义虚拟...
<%= link_to "Login with Facebook", user_omniauth_authorize_path(:facebook) %> ``` 完成以上步骤后,你的Rails应用就可以实现通过Facebook账号登录的功能了。用户点击“Login with Facebook”按钮,会被重定向...
Xero Ruby Oauth 2演示Rails应用程序 该Rails应用程序演示了如何使用omniauth-xero-oauth2 gem与Xero OAuth2 API进行接口。 该应用程序的快速演示: Ruby&Rails版本 ruby 2.6.0p0 (2018-12-25 revision 66547) ...
redirect_to post_path(@post) end end ``` 此外,为了支持多模型绑定,还需要定义合适的路由。例如,可以使用 `resources` 命令来定义与 `posts` 和 `comments` 相关的 RESTful 路由: ```ruby resources :...