国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Nginx > 正文

Nginx 多站點配置實例詳解

2024-08-30 12:28:45
字體:
來源:轉載
供稿:網友

Nginx 多站點配置實例詳解

在一臺 VPS 上,我們有時候需要同時跑幾個 virtualenv。比如 virtualenv app1 跑的是 Django 的一個應用,而 virtualenv app2 跑的是 Tornado。那么如何配置 Nginx,讓它同時支持這兩個 virtualenv 的運行呢?

首先是 Nginx 的主配置,位于 etc/nginx/ngnix.conf,讓它保持默認就行:

user nginx;worker_processes 1;error_log /var/log/nginx/error.log warn;pid    /var/run/nginx.pid;events {  worker_connections 1024;}http {  include    /etc/nginx/mime.types;  default_type application/octet-stream;  log_format main '$remote_addr - $remote_user [$time_local] "$request" '           '$status $body_bytes_sent "$http_referer" '           '"$http_user_agent" "$http_x_forwarded_for"';  access_log /var/log/nginx/access.log main;  sendfile    on;  #tcp_nopush   on;  keepalive_timeout 65;  #gzip on;  server {    listen    80;    server_name 112.124.7.216;    #server_name localhost;    #if ($host != 'www.nowamagic.net' ) {     #  rewrite ^/(.*)$ http://www.nowamagic.net/$1 permanent;     #}     access_log /home/nowamagic/logs/access.log;    error_log /home/nowamagic/logs/error.log;    #root     /root/nowamagic_venv/nowamagic_pj;    location / {      uwsgi_pass 127.0.0.1:8077;      #include uwsgi_params;      include /etc/nginx/uwsgi_params;      #uwsgi_pass 127.0.0.1:8077;      #uwsgi_param UWSGI_script index;      #uwsgi_param UWSGI_PYHOME $document_root;      #uwsgi_param UWSGI_CHDIR $document_root;    }    location ~ /.php$ {       #root     html;       root      /var/www/html;      fastcgi_pass  127.0.0.1:9000;       fastcgi_index index.php;       fastcgi_param script_FILENAME $document_root$fastcgi_script_name;       include    fastcgi_params;     }    access_log off;  }  include /etc/nginx/conf.d/*.conf;}

注意到這一句,include /etc/nginx/conf.d/*.conf; 它會加載 conf.d 文件夾下的所有配置文件。那么接下來的事情就簡單了,我們設計兩個 .conf ,一個是 django 的配置,一個是 tornado 的配置。

1. app1_django.conf

server {  listen    80;  server_name 112.124.7.216;  #server_name localhost;  #if ($host != 'www.imofa.net' ) {   #  rewrite ^/(.*)$ http://www.imofa.net/$1 permanent;   #}   access_log /home/nowamagic/logs/access.log;  error_log /home/nowamagic/logs/error.log;  #root     /root/nowamagic_venv/nowamagic_pj;  location / {    uwsgi_pass 127.0.0.1:8077;    #include uwsgi_params;    include /etc/nginx/uwsgi_params;    #uwsgi_pass 127.0.0.1:8077;    #uwsgi_param UWSGI_script index;    #uwsgi_param UWSGI_PYHOME $document_root;    #uwsgi_param UWSGI_CHDIR $document_root;  }  location ~ /.php$ {     #root     html;     root      /var/www/html;    fastcgi_pass  127.0.0.1:9000;     fastcgi_index index.php;     fastcgi_param script_FILENAME $document_root$fastcgi_script_name;     include    fastcgi_params;   }  access_log off;}

下面是 tornado 的配置:

2. app2_tornado.conf

upstream tornado {  server 127.0.0.1:8888;} server {  listen  80;  root /root/nmapp2_venv;  index index.py index.html;   server_name server;   location / {    #if (!-e $request_filename) {    #  rewrite ^/(.*)$ /index.py/$1 last;    #}  }   location ~ /index/.py {    proxy_pass_header Server;    proxy_set_header Host $http_host;    proxy_set_header X-Real-IP $remote_addr;    proxy_set_header X-Scheme $scheme;    proxy_pass http://tornado;  }}

重啟 Nginx:

service nginx restart

OK,兩個虛擬環境的 app 都能訪問了。

感謝閱讀,希望能幫助到大家,謝謝大家,對本站的支持!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 咸阳市| 金溪县| 连江县| 盐池县| 通山县| 苏州市| 曲阜市| 施甸县| 黄浦区| 屏南县| 托克托县| 大埔县| 博罗县| 延川县| 米脂县| 伊金霍洛旗| 阿勒泰市| 光泽县| 吐鲁番市| 亳州市| 池州市| 永康市| 郸城县| 清远市| 拜城县| 抚宁县| 阜阳市| 仙居县| 红原县| 榆林市| 永和县| 崇阳县| 资溪县| 中山市| 荔浦县| 托克逊县| 菏泽市| 长汀县| 翼城县| 徐水县| 马尔康县|