apache 中ssl配置详见:
http://apps.hi.baidu.com/share/detail/9247188
rails项目实现url加密
下载插件ssl_requirement到 vendor
ruby script/plugin install ssl_requirement
详见:
http://rails-everyday.group.iteye.com/group/wiki/1155
配置Virtual Host指向你的rails的mongrel的服务器
需要在两个地方配置:
在httpd.conf
这里面需要配置类似如下:
<VirtualHost *:8080>
ServerName www.myapp.comm
DocumentRoot "D:/sunny/instantrails/rails_apps/cookbook/public"
ProxyPreserveHost On
ProxyPass / http://192.168.1.108:3000/
ProxyPassReverse / http://192.168.1.108:3000/
</VirtualHost>
在conf/extra/httpd-ssl.conf
在配置文件中的“<VirtualHost _default_:443>”里面添加如下类似配置:
DocumentRoot "D:/sunny/instantrails/rails_apps/cookbook/public"
ProxyPreserveHost On
ProxyPass / http://192.168.1.108:3000/
ProxyPassReverse / http://192.168.1.108:3000/
备注:
1. 上面的端口和你的Apache的默认端口相同
2. 由于使用了Proxy,需要通过反注释相关行而启动Proxy Module,就是下面的一行:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
可能的问题:
我碰到的第一个问题是,凡是使用ssl的action都不能正常访问,action会无限制的重定向到自身,这个问题可以通过以下两个改动解决问题:
1) 在httpd.conf中反注释掉这一行:
LoadModule headers_module modules/mod_headers.so
2) 在httpd-ssl.conf中的virtual host里面添加下面这一行:
RequestHeader set X_FORWARDED_PROTO 'https'
我碰到的另一个问题是,我使用的服务器80端口被封住了,所以ssl_requirement的默认功能不能用了,我把apache默认跑在了8080端口上,并通过修改ssl_requirement.rb下面的代码来解决问题:
redirect_to "http://" + request.host + ":8080" + request.request_uri
分享到:
相关推荐
11. **Nginx与Apache配置**:如果你的Rails应用前有Nginx或Apache作为反向代理,需要配置它们来正确处理SSL终止,然后将安全的HTTPS请求转发到Rails应用。 通过理解并应用这些知识点,开发者可以在Rails应用中实现...
本文档主要介绍了如何在Windows环境下配置Apache作为静态内容服务器,并利用Mongrel来部署多个Rails应用程序。这种配置允许开发者在一个服务器上运行多个独立的Rails应用,并通过Apache进行请求代理。 #### 安装与...
Apache HTTP服务器2.0中文参考手册是一份详细的技术文档,旨在帮助用户理解并有效地管理和配置Apache HTTP Server 2.0版本。Apache HTTP Server是全球最广泛使用的开源Web服务器,以其稳定性、灵活性和强大的功能而...
7. **配置管理**:使用Nginx或Apache作为反向代理,它们可以将HTTP请求转发到Rails应用的Web服务器。同时,配置SSL证书以提供HTTPS安全连接。 8. **进程管理**:利用工具如Systemd或Upstart管理Rails应用进程,确保...
Rails是Ruby编程语言的一个热门Web开发框架,以其“约定优于配置”(Convention Over Configuration)的理念,简化了Web应用的开发流程。然而,将一个Rails应用从开发环境部署到生产环境往往涉及到一系列复杂的技术...
通过 Passenger 或者其他 Ruby 应用服务器模块,如 mod_rails,使 Apache 能够托管 Redmine。在 Apache 配置文件中添加相应的配置,指定 Redmine 的根目录,并确保正确加载所需的模块。重启 Apache 使更改生效。 五...
Apache Tomcat示例配置。 包括,带有和不带有SSL / HTTPS。 HAProxy和IPTables防火墙示例配置。 还包括提供反向代理设置。 请注意,配置允许两个tomcat运行时(端口8080和8090或8070)。 另外,从to
然后,我们需要配置Web服务器,如Nginx或Apache,以代理Rails应用的HTTP请求。Nginx以其高性能和稳定性而广受欢迎,特别适合与Rails配合使用。在Ubuntu 16.x上,可以使用apt安装Nginx,然后创建一个反向代理配置,将...
- Apache文档:配置Apache以支持Redmine。 1.3. 安装环境 确保你的系统满足以下最低要求: - 操作系统:Linux(如Ubuntu、CentOS等)或macOS。 - 开发工具:GCC、Make等。 - 网络连接:用于下载和更新软件包。 1.4...
1. **配置服务器**:如果你使用的是Apache或Nginx作为Web服务器,你需要在服务器配置文件中指定SSL证书的位置。对于Nginx,这通常在`/etc/nginx/sites-available`目录下的配置文件中完成,对于Apache则是在`/etc/...
7. **配置Web服务器**:配置Web服务器以代理到Redmine的应用程序目录,通常需要配置SSL以确保安全。 8. **启动服务**:启动Web服务器,Redmine即可正常运行。 在使用过程中,可能还需要关注以下几点: - **安全性*...
这些依赖包括Ruby,RubyGems,MySQL或PostgreSQL数据库服务器,一个Web服务器(如Apache或Nginx),以及Rails框架。对于Ruby,通常推荐使用RVM(Ruby Version Manager)来管理不同版本的Ruby。通过RVM,你可以轻松地...
为了在Passenger中支持多个Ruby版本,你需要配置Apache或Nginx来识别每个版本。这里以Apache为例: 1. 安装Passenger模块: ```bash gem install passenger passenger-install-apache2-module ``` 2. 编辑...
例如,对于Apache,创建一个名为`redmine.conf`的配置文件,然后启用该虚拟主机。 11. **启动Redmine** 最后,启动Redmine服务,使其可供访问。 ``` bundle exec rails server webrick -e production ``` **三...
7. 配置Web服务器:为了公开访问,你需要将Redmine与Web服务器如Apache或Nginx集成。这通常涉及设置反向代理规则,将HTTP请求转发到Redmine的Puma或Webrick服务器。 8. 安全性:确保安装后更新Redmine的默认设置,...
这里以Apache为例,创建一个名为`redmine`的虚拟主机并配置`DocumentRoot`指向Redmine的`public`目录。确保启用mod_rewrite模块,并设置适当的权限。 ### 10. 插件安装 Redmine插件可以增强其功能。在终端中,进入...
这通常涉及以下步骤:安装必要的服务器软件(如Nginx或Apache作为Web服务器,Passenger或Puma作为应用服务器),配置环境变量,设置SSL证书以实现HTTPS安全连接,以及调整服务器防火墙规则允许HTTP和HTTPS流量。...