首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行"thin start“时未收到数据

运行"thin start“时未收到数据
EN

Stack Overflow用户
提问于 2013-03-22 22:29:16
回答 2查看 1.8K关注 0票数 1

我使用的是ruby 1.9.3和rvm。我想运行一个带有--ssl选项的瘦服务器。我在一些答案中看到,运行"thin start --ssl“应该可以做到这一点。但是在我的开发环境中,当我运行瘦启动--ssl时,终端运行:

代码语言:javascript
复制
Using rack adapter
Thin web server (v1.5.1 codename Straight Razor)
Maximum connections set to 1024
Listening on 0.0.0.0:3000, CTRL+C to stop
And in my web-browser in localhost:3000:

No data received
Unable to load the webpage because the server sent no data.
Here are some suggestions:
Reload this webpage later.
Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection without sending any data.

但是,当我使用"rails s thin“运行相同的命令时,它会工作,并显示不同的消息:

代码语言:javascript
复制
Booting Thin
Rails 3.2.11 application starting in development on http:// 0. 0. 0 .0 :3000
Call with -d to detach
Ctrl-C to shutdown server

我不知道为什么会发生这种情况(可能是因为rvm),但thin正在正常工作。我想运行第一个版本"thin start -- ssl“,因为我不能在"rails s”命令中设置这个ssl选项。

EN

回答 2

Stack Overflow用户

发布于 2013-03-25 21:41:10

我找到了“没有收到数据”的原因。如果任何人有相同的错误:

我运行了"thin start --ssl“,这样我的服务器将只响应https请求。所有的http请求都没有得到响应,这就是为什么没有数据(愚蠢)的原因。默认情况下,http请求发送到端口80,而https请求发送到端口443。

"thin start -- ssl“适用于本地调试ssl,您可以通过在应用程序控制器中强制使用ssl来测试整个应用程序(这样您就不会发现自己处于同样的情况,没有收到数据)。

票数 1
EN

Stack Overflow用户

发布于 2013-03-23 01:56:09

一个更简单(也更真实)的解决方案是在你的rails应用程序前面运行一个web服务器(比如nginx)。此web服务器将监听http和https流量,然后将所有内容通过端口3000传递到Rails (瘦)服务器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15572871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档