是的。fastcgi-mono-server4(mono 3.12.1) 可以在单个 proc 中使用多个 webapp。
似乎 fastcgi-mono-server 仅使用 vhost+vport+vpath 来匹配 .webapp 文件中定义的 webapp 节点。
- 在不同的端口 80 和 81 中设置两个 webapp
my_nginx.conf
server {
listen 80;
server_name localhost;
location / {
root /home/test/www;
index index.html Default.aspx;
fastcgi_pass 127.0.0.1:9000;
include /etc/nginx/fastcgi_params;
}
}
server {
listen 81;
server_name localhost;
location / {
root /home/test/www2;
index index.html Default.aspx;
fastcgi_pass 127.0.0.1:9000;
include /etc/nginx/fastcgi_params;
}
}
- 二.webapp
它包含 2 个 webapp 节点
<apps>
<web-application>
<name>www</name>
<vhost>*</vhost>
<vport>80</vport>
<vpath>/</vpath>
<path>/home/test/www/</path>
<enabled>true</enabled>
</web-application>
<web-application>
<name>www2</name>
<vhost>*</vhost>
<vport>81</vport>
<vpath>/</vpath>
<path>/home/test/www2/</path>
<enabled>true</enabled>
</web-application>
</apps>
我刚刚测试了使用 vport 来区分它们,并成功了。我认为使用 vhost 或 vpath 或 vhost+vport+vpath 的任何组合都应该有效。
- 启动 fastcgi 服务器
监听 9000 端口。
fastcgi-mono-server4 --appconfigfile=./two.webapp /socket=tcp:127.0.0.1:9000