在其他端口部署 Rails 应用程序

发布于 2024-11-26 04:39:37 字数 210 浏览 2 评论 0原文

简单的问题,如何将 Rails 应用程序部署到我网站的端口中?我知道我可以在使用 Mongrel 或 Webrick 运行时指定端口,但这一次,我必须将其部署到生产中。我认为乘客可以处理这个问题,但我不知道如何处理。我尝试搜索但仍然找不到解决方案。请帮忙:)

谢谢!

后续: 我使用的是 Ubuntu 10.04 LTS,我的 Passenger 使用 Apache 运行。

simple question, How can I deploy my Rails Application into a port of my website? I know i can specify the port when running using Mongrel or Webrick, but this time, I have to deploy it into production. I think passenger can manage this but I dont know how. I tried search but still I can't find the solution. Please help :)

Thanks!

Follow-up:
I am using Ubuntu 10.04 LTS and my Passenger runs with Apache.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

宣告ˉ结束 2024-12-03 04:39:37

如果您将 Passenger 与 Apache 或 nginx 一起使用。它将使用默认端口 80。您可以根据您使用的 Web 服务器在配置文件中更改此端口。

If you're using Passenger with Apache or nginx. It will use the default port, 80. You can change this in the config file based on which web server you use.

梦情居士 2024-12-03 04:39:37
# HTTPS server
server {
  listen 80;
  listen 8080;
  server_name *.host.com;

  root /home/app/public_html/host_production/current/public;

  error_page 500 502 504 /500.html;
  location = /50x.html {
      root html;
  }
  location = /404.html {
      root html;
  }
  error_page 503 @503;
  location @503 {
    error_page 405 = /system/maintenance.html;
    if (-f $document_root/system/maintenance.html) {
      rewrite ^(.*)$ /system/maintenance.html break;
    }

    rewrite ^(.*)$ /503.html break;
  }

  try_files $uri /system/maintenance.html @passenger;


  location @passenger {
    passenger_enabled on;
    passenger_min_instances 5;
    rails_env production;
  }


  if ($request_method !~ ^(GET|HEAD|PUT|POST|DELETE|OPTIONS)$ ){
    return 405;
  }

  if (-f $document_root/system/maintenance.html) {
    return 503;
  }


  location ~ ^/(assets|images|javascripts|stylesheets|swfs|system)/ {
      gzip_static on;
      expires max;
      add_header Cache-Control public;
  }


  location ~ \.php$ {
          deny all;
  }


  access_log /dev/null;
  error_log /dev/null;
}

nginx+passenger 配置

# HTTPS server
server {
  listen 80;
  listen 8080;
  server_name *.host.com;

  root /home/app/public_html/host_production/current/public;

  error_page 500 502 504 /500.html;
  location = /50x.html {
      root html;
  }
  location = /404.html {
      root html;
  }
  error_page 503 @503;
  location @503 {
    error_page 405 = /system/maintenance.html;
    if (-f $document_root/system/maintenance.html) {
      rewrite ^(.*)$ /system/maintenance.html break;
    }

    rewrite ^(.*)$ /503.html break;
  }

  try_files $uri /system/maintenance.html @passenger;


  location @passenger {
    passenger_enabled on;
    passenger_min_instances 5;
    rails_env production;
  }


  if ($request_method !~ ^(GET|HEAD|PUT|POST|DELETE|OPTIONS)$ ){
    return 405;
  }

  if (-f $document_root/system/maintenance.html) {
    return 503;
  }


  location ~ ^/(assets|images|javascripts|stylesheets|swfs|system)/ {
      gzip_static on;
      expires max;
      add_header Cache-Control public;
  }


  location ~ \.php$ {
          deny all;
  }


  access_log /dev/null;
  error_log /dev/null;
}

nginx+passenger config

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文