我需要使用nginx自动创build和删除子域名。 我知道我可以用下面的方法做到这一点:
server { listen 80; server_name example.com *.example.com; root /var/www/example.com/$subdomain; set $subdomain ""; if ($host ~* ^([a-z0-9-\.]+)\.example.com$) { set $subdomain $1; } if ($host ~* ^www.example.com$) { set $subdomain ""; } }
我可以使用脚本在根/var/www/example.com/中创build文件夹,nginx将为我创build合适的子域。
但是我需要设置这样的参数,如同时连接的数量和最大连接带宽和参数的值将被传递给我的脚本。
所以问题是如何设置这些额外的参数?
如果没有办法使用nginx来解决我的问题,那么可以告诉我如何使用apache来解决这个问题。
谢谢!
我包含一个子文件夹(/ etc / nginx / confs),并为每个子域创build一个新文件。 我正在运行rails应用程序,所以我需要在每个子域中进行适当的configuration。 我有一个后台beanstalkd工作人员,当有人报名安装应用程序,创buildnginx conf和重新加载nginx。
如果我得到这个正确的东西,你现在可以用apache上的mod_vhost_alias来实现,所以你有和nginx一样的行为,就像这个手册页一样 。
关于剩下的参数,我build议你使用mod_qos并将其设置在要提供文件的目录中的.htaccess文件中。
如果你对这个post发表评论,我可以提出问题:)
希望这可以帮助!
没有办法做到你想要的东西。 Nginx不是用大容量主机写的,而是为高stream量的网站编写的。
用Nginx处理这个问题的正确方法是没有一个全面的服务器模块,而是每个子域都有一个服务器模块。 手工创build这些东西显然很乏味,所以强烈build议编写一个能生成它们的脚本,而不是太复杂。