Điểm:1

Làm cách nào tôi có thể thiết lập nhiều Ứng dụng Django bằng Trình giám sát (bao gồm Gunicorn và Nginx)? bind() đến [::]:8090 không thành công (98: Địa chỉ đã được sử dụng)

lá cờ us

Tôi đã triển khai Ứng dụng Django/Wagtail bằng Trình giám sát, Gunicorn và Nginx (trên Debian Buster), vì vậy tôi có thể tiếp cận nó bằng http://xx.xxx.xxx.xxx:8090.

/etc/nginx/sites-available/cms

người phục vụ {
    tên_máy chủ xx.xxx.xxx.xxx;
    nghe_8090 ;
    nghe [::]:8090 ipv6only=on;
    error_log /home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/var/log/gunicorn-error.log;
    access_log /home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/var/log/gunicorn-access.log;

    vị trí = /favicon.ico { truy cập_đăng xuất; log_not_found tắt; }
    vị trí /tĩnh/ {
        gốc /home/www.mysite.com/www/my-site/cms/admin_panel;
    }
        địa điểm /phương tiện/ {
        gốc /home/www.mysite.com/www/my-site/cms/admin_panel;
    }

    địa điểm / {
        bao gồm proxy_params;
        proxy_pass http://unix:/home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/run/gunicorn.sock;
    }
}
/etc/supervisor/conf.d/guni-mysite-admin.conf

[chương trình:guni-mysite-admin]
command=/home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/bin/gunicorn admin_panel.wsgi:application --config /home/www.mysite.com/.local/share/virtualenvs/cms -WqsZ9qOt/etc/gunicorn/conf.py
người dùng=www.mysite.com
tự khởi động=true
tự khởi động lại=true
/etc/supervisor/conf.d/nginx-mysite-admin.conf

[chương trình:nginx-mysite-admin]
lệnh=/usr/sbin/nginx -g "tắt daemon;"
tự khởi động=true
tự khởi động lại=true
stderr_logfile=/home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/var/log/nginx-error.log
stdout_logfile=/home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/var/log/nginx-access.log
stderr_logfile_maxbytes=2MB
stdout_logfile_maxbytes=2MB
/home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/etc/gunicorn/conf.py

công nhân = 3
giữ nguyên = 5
người dùng = 'www.mysite.com'
proc_name = 'admin_panel'
loglevel = 'lỗi'
errorlog = '/home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/var/log/gunicorn-error.log'
accesslog = '/home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/var/log/gunicorn-access.log'
liên kết = 'unix:/home/www.mysite.com/.local/share/virtualenvs/cms-WqsZ9qOt/run/gunicorn.sock'
raw_env = ['DJANGO_SETTINGS_MODULE=admin_panel.settings.production']
pythonpath = '/home/www.mysite.com/www/mysite/cms/admin_panel'

Bây giờ tôi đã thêm 2 Ứng dụng Django theo cách tương tự. Thật không may, Người giám sát không thể đưa chúng lên. Đôi khi 1 trong 3 lần chạy, nhưng hầu hết thời gian không cái nào hoạt động. Trong trường hợp nó hoạt động, nó sẽ tạo ra 3 quy trình (không biết nếu đó là cách nó được cho là như vậy).

$ sudo lsof -i:8090

LỆNH PID NGƯỜI DÙNG LOẠI FD KÍCH THƯỚC THIẾT BỊ/TẮT TÊN NÚT
nginx 3631 root 16u IPv4 961301189 0t0 TCP *:8090 (LẮNG NGHE)
nginx 3631 root 17u IPv6 961301190 0t0 TCP *:8090 (LẮNG NGHE)
nginx 3632 dữ liệu www 16u IPv4 961301189 0t0 TCP *:8090 (LẮNG NGHE)
nginx 3632 dữ liệu www 17u IPv6 961301190 0t0 TCP *:8090 (LẮNG NGHE)
nginx 3633 dữ liệu www 16u IPv4 961301189 0t0 TCP *:8090 (LẮNG NGHE)
nginx 3633 dữ liệu www 17u IPv6 961301190 0t0 TCP *:8090 (LẮNG NGHE)

Nhật ký lỗi Nginx đưa ra 98: Địa chỉ đã được sử dụng, ngay cả trên cổng 81 (lấy nó làm cổng mặc định vì Apache đang sử dụng 80), không được sử dụng. Apache không phải là vấn đề, bởi vì nó không hoạt động, ngay cả khi Apache bị tắt.

/var/log/nginx/error.log

...
2021/08/06 12:41:54 [xuất hiện] 24927#24927: liên kết () với [::]:4020 không thành công (98: Địa chỉ đã được sử dụng)
2021/08/06 12:41:54 [xuất hiện] 24927#24927: liên kết () với [::]:8090 không thành công (98: Địa chỉ đã được sử dụng)
2021/08/06 12:41:54 [xuất hiện] 24927#24927: liên kết () với [::]:81 không thành công (98: Địa chỉ đã được sử dụng)
2021/08/06 12:41:54 [xuất hiện] 24927#24927: liên kết () với [::]:8070 không thành công (98: Địa chỉ đã được sử dụng)
2021/08/06 12:41:54 [xuất hiện] 24927#24927: liên kết () với [::]:8080 không thành công (98: Địa chỉ đã được sử dụng)
2021/08/06 12:41:54 [xuất hiện] 24927#24927: liên kết () với [::]:4030 không thành công (98: Địa chỉ đã được sử dụng)
2021/08/06 12:41:54 [xuất hiện] 24928#24928: vẫn không thể liên kết()
...

Đầu ra - # nginx -T

nginx: cú pháp file cấu hình /etc/nginx/nginx.conf là ok
nginx: file cấu hình /etc/nginx/nginx.conf kiểm tra thành công
# tập tin cấu hình /etc/nginx/nginx.conf:
dữ liệu www của người dùng;
worker_processes tự động;
pid /run/nginx.pid;
bao gồm /etc/nginx/modules-enabled/*.conf;

sự kiện {
    công_nhân kết_nối 768 ;
    # đa_chấp vào ;
}

http {

    ##
    # Cài đặt cơ bản
    ##

    gửi tệp trên;
    bật tcp_nopus;
    bật tcp_nodelay;
    keepalive_timeout 65;
    loại_hash_max_size 2048;
    # server_token tắt;

    # server_name_hash_bucket_size 64;
    # máy chủ_tên_trong_chuyển hướng tắt;

    bao gồm /etc/nginx/mime.types;
    ứng dụng default_type/octet-stream;

    ##
    # Cài đặt SSL
    ##

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Bỏ SSLv3, tham khảo: POODLE
    bật ssl_prefer_server_ciphers;

    ##
    # Cài đặt ghi nhật ký
    ##

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    ##
    # Cài đặt Gzip
    ##

    bật gzip;

    # gzip_vary bật;
    # gzip_proxied bất kỳ;
    # gzip_comp_cấp 6;
    # gzip_buffers 16 8k;
    # gzip_http_version 1.1;
    # văn bản gzip_types/văn bản thuần túy/ứng dụng css/ứng dụng json/văn bản javascript/ứng dụng xml/ứng dụng xml/xml+văn bản rss/javascript;

    ##
    # Cấu hình máy chủ ảo
    ##

    bao gồm /etc/nginx/conf.d/*.conf;
    bao gồm /etc/nginx/sites-enabled/*;
}


#email {
# # Xem tập lệnh xác thực mẫu tại:
# # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
#
# # auth_http localhost/auth.php;
# # pop3_capabilities "TOP" "NGƯỜI DÙNG";
# # khả năng của imap "IMAP4rev1" "UIDPLUS";
#
#   người phục vụ {
# nghe máy chủ cục bộ: 110;
# giao thức pop3;
# bật proxy;
# }
#
#   người phục vụ {
# nghe localhost:143;
# hình ảnh giao thức;
# bật proxy;
# }
#}

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-http-auth-pam.conf:
mô-đun load_module/ngx_http_auth_pam_module.so;

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-http-dav-ext.conf:
mô-đun load_module/ngx_http_dav_ext_module.so;

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-http-echo.conf:
mô-đun load_module/ngx_http_echo_module.so;

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-http-geoip.conf:
mô-đun load_module/ngx_http_geoip_module.so;

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-http-image-filter.conf:
mô-đun load_module/ngx_http_image_filter_module.so;

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-http-subs-filter.conf:
mô-đun load_module/ngx_http_subs_filter_module.so;

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-http-upstream-fair.conf:
mô-đun load_module/ngx_http_upstream_fair_module.so;

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-http-xslt-filter.conf:
mô-đun load_module/ngx_http_xslt_filter_module.so;

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-mail.conf:
mô-đun load_module/ngx_mail_module.so;

# tệp cấu hình /etc/nginx/modules-enabled/50-mod-stream.conf:
mô-đun load_module/ngx_stream_module.so;

# tập tin cấu hình /etc/nginx/mime.types:

các loại {
    văn bản/html html htm shtml;
    văn bản/css css;
    văn bản/xml xml;
    hình ảnh/gif gif;
    hình ảnh/jpeg jpeg jpg;
    ứng dụng/javascript js;
    ứng dụng/nguyên tử + nguyên tử xml;
    ứng dụng/rss+xml rss;

    văn bản/toán học mml;
    văn bản/txt đơn giản;
    text/vnd.sun.j2me.app-descriptor jad;
    text/vnd.wap.wml wml;
    văn bản/x-thành phần htc;

    hình ảnh/png png;
    hình ảnh/tiff tif tiff;
    image/vnd.wap.wbmp wbmp;
    hình ảnh/biểu tượng x ico;
    hình ảnh/x-jng jng;
    hình ảnh/x-ms-bmp bmp;
    hình ảnh/svg+xml svg svgz;
    hình ảnh/webp webp;

    ứng dụng/phông chữ woff;
    ứng dụng/java-archive jar chiến tai;
    ứng dụng/json json;
    ứng dụng/mac-binhex40 hqx;
    tài liệu ứng dụng/msword;
    ứng dụng/pdf pdf;
    ứng dụng/tái bút ps eps ai;
    ứng dụng/rtf rtf;
    ứng dụng/vnd.apple.mpegurl m3u8;
    ứng dụng/vnd.ms-excel xls;
    ứng dụng/vnd.ms-fontobject eot;
    application/vnd.ms-powerpoint ppt;
    ứng dụng/vnd.wap.wmlc wmlc;
    ứng dụng/vnd.google-earth.kml+xml kml;
    ứng dụng/vnd.google-earth.kmz kmz;
    ứng dụng/x-7z-nén 7z;
    ứng dụng/x-ca cao cco;
    ứng dụng/x-java-archive-diff jardiff;
    ứng dụng/x-java-jnlp-tệp jnlp;
    ứng dụng/x-makeself chạy;
    ứng dụng/x-perl pl chiều;
    ứng dụng/x-pilot prc pdb;
    ứng dụng/x-rar-rar nén;
    ứng dụng/x-redhat-gói-quản lý rpm;
    ứng dụng/x-biển biển;
    ứng dụng/x-shockwave-flash swf;
    ứng dụng/x-stuffit ngồi;
    ứng dụng/x-tcl tcl tk;
    ứng dụng/x-x509-ca-cert der pem crt;
    ứng dụng/x-xpinstall xpi;
    ứng dụng/xhtml+xml xhtml;
    ứng dụng/xspf+xml xspf;
    ứng dụng/zip zip;

    ứng dụng/octet-stream bin exe dll;
    gỡ lỗi ứng dụng/octet-stream;
    ứng dụng/octet-stream dmg;
    ứng dụng/octet-stream iso img;
    ứng dụng/octet-stream msi msp msm;

    application/vnd.openxmlformats-officedocument.wordprocessingml.document docx;
    application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx;
    application/vnd.openxmlformats-officedocument.presentationml.presentation pptx;

    âm thanh/midi mid midi kar;
    âm thanh/mpeg mp3;
    âm thanh/ogg ogg;
    âm thanh/x-m4a m4a;
    âm thanh/x-realaudio ra;

    video/3gpp 3gpp 3gp;
    video/mp2t ts;
    video/mp4 mp4;
    video/mpeg mpeg mpg;
    video/quicktime mov;
    video/webm webm;
    video/x-flv flv;
    video/x-m4v m4v;
    video/x-mng mng;
    video/x-ms-asf asx asf;
    video/x-ms-wmv wmv;
    video/x-msvideo avi;
}

# tập tin cấu hình /etc/nginx/conf.d/timeout.conf:
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
gửi_thời gian chờ 600;

# tệp cấu hình /etc/nginx/sites-enabled/admin.mysite_2:
người phục vụ {
    tên_máy chủ xx.xxx.xxx.xxx;
    lắng_nghe 4020 ;
    lắng nghe [::]:4020 ipv6only=on;
    error_log /home/www.mysite_2/.local/share/virtualenvs/cms-CiomF2CE/var/log/gunicorn-error.log;
    access_log /home/www.mysite_2/.local/share/virtualenvs/cms-CiomF2CE/var/log/gunicorn-access.log;

    # add_header 'Kiểm soát truy cập-Cho phép-Xuất xứ' '*';
    # add_header 'Phương pháp kiểm soát truy cập-cho phép' 'NHẬN, ĐĂNG, TÙY CHỌN';
    # add_header 'Kiểm soát truy cập-Cho phép-Headers' 'DNT,Tác nhân người dùng,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';

    vị trí = /favicon.ico { truy cập_đăng xuất; log_not_found tắt; }
    vị trí /tĩnh/ {
        gốc /home/mysite_2/www/translator-app-python/cms/wagtail_cms;
    }
        địa điểm /phương tiện/ {
        gốc /home/mysite_2/www/translator-app-python/cms/wagtail_cms;
    }

    địa điểm / {
        bao gồm proxy_params;
        proxy_pass http://unix:/home/mysite_2/.local/share/virtualenvs/cms-CiomF2CE/run/gunicorn.sock;
    }
}
# tập tin cấu hình /etc/nginx/proxy_params:
proxy_set_header Máy chủ $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

# tệp cấu hình /etc/nginx/sites-enabled/cms:
người phục vụ {
    tên_máy chủ xx.xxx.xxx.xxx;
    nghe_8090 ;
    nghe [::]:8090 ipv6only=on;
    error_log /home/mysite_1/.local/share/virtualenvs/cms-WqsZ9qOt/var/log/gunicorn-error.log;
    access_log /home/mysite_1/.local/share/virtualenvs/cms-WqsZ9qOt/var/log/gunicorn-access.log;

    # add_header 'Kiểm soát truy cập-Cho phép-Xuất xứ' '*';
    # add_header 'Phương pháp kiểm soát truy cập-cho phép' 'NHẬN, ĐĂNG, TÙY CHỌN';
    # add_header 'Kiểm soát truy cập-Cho phép-Headers' 'DNT,Tác nhân người dùng,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';

    vị trí = /favicon.ico { truy cập_đăng xuất; log_not_found tắt; }
    vị trí /tĩnh/ {
        gốc /home/mysite_1/www/kc-site/cms/admin_panel;
    }
        địa điểm /phương tiện/ {
        gốc /home/wmysite_1/www/kc-site/cms/admin_panel;
    }

    địa điểm / {
        bao gồm proxy_params;
        proxy_pass http://unix:/home/mysite_1/.local/share/virtualenvs/cms-WqsZ9qOt/run/gunicorn.sock;
    }
}
# tệp cấu hình /etc/nginx/sites-enabled/default:
##
# Bạn nên xem URL sau để hiểu rõ
# tệp cấu hình Nginx để giải phóng hoàn toàn sức mạnh của Nginx.
# https://www.nginx.com/resources/wiki/start/
# https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/
# https://wiki.debian.org/Nginx/DirectoryStructure
#
# Trong hầu hết các trường hợp, quản trị viên sẽ xóa tệp này khỏi các trang web đã bật/ và
# để nó làm tài liệu tham khảo bên trong các trang web có sẵn, nơi nó sẽ tiếp tục tồn tại
# được cập nhật bởi nhóm đóng gói nginx.
#
# Tệp này sẽ tự động tải các tệp cấu hình do người khác cung cấp
# ứng dụng, chẳng hạn như Drupal hoặc Wordpress. Các ứng dụng này sẽ được thực hiện
# có sẵn bên dưới đường dẫn có tên gói đó, chẳng hạn như /drupal8.
#
# Vui lòng xem /usr/share/doc/nginx-doc/examples/ để biết thêm các ví dụ chi tiết.
##

# Cấu hình máy chủ mặc định
#
người phục vụ {
    # alte Cú pháp
    nghe 81 default_server;
    lắng nghe [::]:81 ipv6only=on default_server;

    # Cấu hình SSL
    #
    # nghe 443 ssl default_server;
    # lắng nghe [::]:443 ssl default_server;
    #
    # Lưu ý: Bạn nên tắt gzip cho lưu lượng SSL.
    # Xem: https://bugs.debian.org/773332
    #
    # Đọc ssl_ciphers để đảm bảo cấu hình an toàn.
    # Xem: https://bugs.debian.org/765782
    #
    # Chứng chỉ tự ký được tạo bởi gói ssl-cert
    # Đừng sử dụng chúng trong máy chủ sản xuất!
    #
    # bao gồm đoạn trích/snakeoil.conf;

    gốc /var/www/html/Nginx;

    # Thêm index.php vào danh sách nếu bạn đang sử dụng PHP
    chỉ mục index.html index.htm index.nginx-debian.html index.php ;

    tên máy chủ _;

    địa điểm / {
        # Lần đầu tiên cố gắng phục vụ yêu cầu dưới dạng tệp, sau đó
        # làm thư mục, sau đó quay lại hiển thị lỗi 404.
        try_files $uri $uri/ =404;
    }

    # truyền tập lệnh PHP tới máy chủ FastCGI ( neu )
    #
    vị trí ~ \.php$ {
        bao gồm đoạn trích/fastcgi-php.conf;
        bao gồm /etc/nginx/conf.d/*.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }

    # truyền tập lệnh PHP tới máy chủ FastCGI
    #
    #vị trí ~ \.php$ {
    # bao gồm đoạn trích/fastcgi-php.conf;
    #
    # # Với php-fpm (hoặc các ổ cắm unix khác):
    # fastcgi_pass unix:/run/php/php7.3-fpm.sock;
    # # Với php-cgi (hoặc các ổ cắm tcp khác):
    # # fastcgi_pass 127.0.0.1:9000;
    #}

    # từ chối quyền truy cập vào tệp .htaccess, nếu tài liệu gốc của Apache
    # đồng tình với nginx
    #
    #vị trí ~ /\.ht {
    #   Phủ nhận tất cả;
    #}
}


# Cấu hình máy chủ ảo ví dụ.com
#
# Bạn có thể di chuyển tệp đó sang một tệp khác trong các trang web có sẵn/ và liên kết tượng trưng đó
# đến các trang web đã bật/ để kích hoạt nó.
#
#người phục vụ {
#nghe80;
# nghe [::]:80;
#
# tên_máy chủ ví dụ.com;
#
# gốc /var/www/example.com;
# chỉ số index.html;
#
#   địa điểm / {
# try_files $uri $uri/ =404;
# }
#}

# tập tin cấu hình /etc/nginx/snippets/fastcgi-php.conf:
# regex để tách $uri thành $fastcgi_script_name và $fastcgi_path
fastcgi_split_path_info ^(.+?\.php)(/.*)$;

# Kiểm tra xem tập lệnh PHP có tồn tại trước khi chuyển nó không
try_files $fastcgi_script_name =404;

# Bỏ qua thực tế là try_files đặt lại $fastcgi_path_info
# xem: http://trac.nginx.org/nginx/ticket/321
đặt $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info;

fastcgi_index index.php;
bao gồm fastcgi.conf;

# tập tin cấu hình /etc/nginx/fastcgi.conf:

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;

fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;

fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;

# Chỉ PHP, bắt buộc nếu PHP được xây dựng với --enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;

# tệp cấu hình /etc/nginx/sites-enabled/kcanalytics:
người phục vụ {
    tên_máy chủ xx.xxx.xxx.xxx;
    nghe 8070 ;
    nghe [::]:8070 ipv6only=on;
    gốc /home/mysite_1/www/kc-site/Open-Web-Analytics;
    chỉ mục index.php index.html index.htm;
    địa điểm / {
        try_files $uri $uri/ =404;
    }
    vị trí ~ \.php$ {
        bao gồm đoạn trích/fastcgi-php.conf;
        bao gồm /etc/nginx/conf.d/*.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }
    error_log /var/log/nginx/kcanalyticslog/kcanalytics-error.log;
    access_log /var/log/nginx/kcanalyticslog/kcanalytics-access.log;
}

# tệp cấu hình /etc/nginx/sites-enabled/kcclient:
người phục vụ {
    tên_máy chủ xx.xxx.xxx.xxx;
    nghe 8080 ;
    nghe [::]:8080 ipv6only=on;
    gốc /var/www/html/Nginx;
    chỉ mục index.nginx-debian.html;

    địa điểm / {
    proxy_pass http://localhost:3000;
    proxy_http_version 1.1;
    proxy_set_header Nâng cấp $http_upgrade;
    'nâng cấp' kết nối proxy_set_header;
    proxy_set_header Máy chủ lưu trữ $host;
    proxy_cache_bypass $http_upgrade;
    }
}

# tệp cấu hình /etc/nginx/sites-enabled/phrase-api.mysite_2:
người phục vụ {
    tên_máy chủ xx.xxx.xxx.xxx;
    lắng_nghe 4030 ;
    nghe [::]:4030 ipv6only=on;
    error_log /home/mysite_2/.local/share/virtualenvs/api-dAF0CRIW/var/log/gunicorn-error.log;
    access_log /home/mysite_2/.local/share/virtualenvs/api-dAF0CRIW/var/log/gunicorn-access.log;

    # add_header 'Kiểm soát truy cập-Cho phép-Xuất xứ' '*';
    # add_header 'Phương pháp kiểm soát truy cập-cho phép' 'NHẬN, ĐĂNG, TÙY CHỌN';
    # add_header 'Kiểm soát truy cập-Cho phép-Headers' 'DNT,Tác nhân người dùng,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';

    vị trí = /favicon.ico { truy cập_đăng xuất; log_not_found tắt; }
    vị trí /tĩnh/ {
        gốc /home/mysite_2/www/translator-app-python/api/translator_rest_api;
    }
        địa điểm /phương tiện/ {
        gốc /home/mysite_2/www/translator-app-python/api/translator_rest_api;
    }

    địa điểm / {
        bao gồm proxy_params;
        proxy_pass http://unix:/home/mysite_2/.local/share/virtualenvs/api-dAF0CRIW/run/gunicorn.sock;
    }
}
Michael Hampton avatar
lá cờ cz
Tại sao trên trái đất bạn đang sử dụng giám sát?
djdomi avatar
lá cờ za
do ` nghe 8090 ; nghe [::]:8090 ipv6only=on;` bảo nghe trên cổng đó, tại sao không thay đổi nó?
Điểm:0
lá cờ in

Có vẻ như nginx chỉ phàn nàn về địa chỉ IPV6. Bạn có cần ipv6 không? Nếu không, thì việc xóa các khối lắng nghe cho ipv6 sẽ khiến nginx chỉ khởi động bình thường trên ipv4. Nếu bạn KHÔNG cần trình nghe IPV6 trong nginx, thì bạn có thể làm như sau

bộ nhiệt áp -k 8090/tcp

Thao tác này sẽ tắt cổng giữ PID 8090. Thực hiện tương tự cho các cổng còn lại mà bạn cần. Một cách tiếp cận khắc nghiệt hơn sẽ là tiêu diệt hoàn toàn nginx (giả sử đó là thứ giữ các cổng mở)

pkill -f nginx và đợi $!
khởi động lại dịch vụ nginx
Paul avatar
lá cờ us
Cảm ơn bạn đã đúng nhưng tôi cần giữ các cài đặt IP như thế này để kiểm soát các liên kết IPv4 và IPv6. Với cách thiết lập sau, tôi đã chạy thành công hai ứng dụng khách, ba API, một Trang web phân tích Wordpress và Php mà không có xung đột: Ví dụ: một trong các API có Máy chủ HTTP Apache2 làm Proxy (nghe cổng 80) đang chuyển tiếp tới Nginx ( không được kiểm soát bởi Người giám sát mà thực sự là giải pháp!) Gunicorn được kiểm soát bởi Người giám sát.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.