【问题标题】:How to setup nginx to allow access with /suburi on ubuntu 12.04?如何设置 nginx 以允许在 ubuntu 12.04 上使用 /suburi 进行访问?
【发布时间】:2012-05-07 03:47:13
【问题描述】:

我们正在设置一个 nginx 网络服务器以允许在我们的 rails 3.1 应用程序中访问 /suburi(例如访问 URL:http://www.railapp.com/subdomain)。这里的subrui名字是byop。我们的 rails 文档根子目录位于 /var/www/。 suburi byop 位于 /var/www/byop。这是我们在成功部署 Rails 后所做的:

  1. 设置 nginx.conf:

    服务器{ 听 80; 服务器名称 154.248.209.181; 根 /var/www/; 乘客启用; rails_env 生产; 乘客基地uri /byop; }

  2. 在 /var/www 下创建符号链接,如下所示:

    ln -s /var/www/byop/current/public /var/www/byop

nginx 已停止并重新启动。但是http://154.248.209.181/byop会出现403 Forbidden页面

我们检查了 /var/www 下的符号链接,没有列出链接(只有 byop 子目录)。这是 ls -li 的输出:

ubuntu@ip-10-152-95-60:/var/www$ ls -li
total 4
9296 drwxrwsr-x 4 ubuntu www-data 4096 May  6 03:12 byop

我们上面的设置有什么问题?非常感谢。

【问题讨论】:

    标签: ruby-on-rails http ubuntu nginx


    【解决方案1】:

    我们发现的问题在于创建符号链接的第 2 步。子目录的名称和符号链接的名称相同。使用不同的符号链接名称后,问题解决了。这是工作副本:

    1. Setup the nginx.conf:
    
    server { 
        listen 80; 
        server_name 154.248.209.181; 
        root /var/www/; 
        passenger_enabled on; 
        rails_env production; 
        passenger_base_uri /by; 
     }
    
    2. Create symlink under /var/www as following:
    
    ln -s /var/www/byop/current/public /var/www/by
    

    然后http://154.248.209.181/by 调出页面。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-04
      • 2013-04-05
      • 2013-10-07
      相关资源
      最近更新 更多