假设我有一个运行多个实例的极简主义
Python Web服务器,每个实例都有不同的端口指定为命令行参数.
我希望使用Host标头将我的服务器请求重定向为这样:
name1.mydomain.com -> localhost:8000 name2.mydomain.com -> localhost:8001 name3.mydomain.com -> localhost:8002
这是用Lighttpd这样的服务器做最好的事情并做一些虚拟主机配置 – 可能吗?
我宁愿不使用像Apache这样重量级的东西.
谢谢!
解决方法
使用Nginx,您可以使用以下内容:
server { server_name name1.domain.com; location / { proxy_pass http://localhost:8000; } } server { server_name name2.domain.com; location / { proxy_pass http://localhost:8001; } } server { server_name name3.domain.com; location / { proxy_pass http://localhost:8002; } }
map $http_host $port { hostnames; default 8000; name1.example.com 8000; name2.example.com 8001; name3.example.com 8002; } server { listen 80; server_name ~^name\d.example.com; location / { proxy_pass http://127.0.0.1:$port; } }