0

我计划为 ruby​​ 开发提供一些免费的托管服务。目前我必须手动编辑 nginx 以在创建用户时添加子域以指向他的目录 /home/$user/www/public

所以对于用户 yoda 我有这样的东西

server {
      listen 80;
      server_name yoda.jedi.am;
   root /home/yoda/www/public;   
   passenger_enabled on;
}

现在假设我添加用户 obione 无论如何都可以将 nginx 设置为使用 root /home/user/www/public 自动服务器 user.jedi.am 并且如果不能重定向到主 root ?

谢谢

4

1 回答 1

0

尝试更多类似的东西:

    server {
            listen 80;
            server_name ~^(.*)\.jedi\.am$
            if ($hostname ~ ^(.*)\.jedi\.am$) {
                    set $user $1;
            }
            if ( ! -d /home/$user/www/public ) {
                    rewrite . http://jedi.am/ redirect;
            }
            root /home/$user/www/public;
            passenger_enabled on;
    }

未经测试,但这个或类似的东西应该可以工作。

于 2012-04-06T22:03:24.870 回答