Heim  >  Fragen und Antworten  >  Hauptteil

node.js – Wie richte ich den lokalen Backend-Server des WeChat-Applets mit Express ein?

Im offiziellen Dokument des WeChat-Applets heißt es:

Die Anfrage ist https und der Port kann nicht einbezogen werden


1. Wie kann ich eine Expressverbindung direkt herstellen, ohne den Port abzuhören?

2. Muss der vom WeChat-Applet eingerichtete Link https sein? Wie bekomme ich https?

我想大声告诉你我想大声告诉你2736 Tage vor740

Antworte allen(1)Ich werde antworten

  • 迷茫

    迷茫2017-05-16 13:36:21

    1、nginx监听本地express的端口3000;
    2、阿里云可以申请免费的https证书

    user  www www;
    worker_processes  1;
    
    error_log  /alidata/log/nginx/error.log crit;
    pid        /alidata/server/nginx/logs/nginx.pid;
    
    #Specifies the value for maximum file descriptors that can be opened by this process. 
    worker_rlimit_nofile 65535;
    
    events 
    {
      use epoll;
      worker_connections 65535;
    }
    
    
    http {
        include       mime.types;
        default_type  application/octet-stream;
    
        #chaset  gb2r312;
    
        server_names_hash_bucket_size 128;
        client_header_buffer_size 32k;
        large_client_header_buffers 4 32k;
        client_max_body_size 8m;
    
        sendfile on;
        tcp_nopush     on;
    
        keepalive_timeout 60;
    
        tcp_nodelay on;
    
        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        fastcgi_buffer_size 64k;
        fastcgi_buffers 4 64k;
        fastcgi_busy_buffers_size 128k;
        fastcgi_temp_file_write_size 128k;
    
        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.0;
        gzip_comp_level 2;
        gzip_types       text/plain application/x-javascript text/css application/xml;
        gzip_vary on;
        #limit_zone  crawler  $binary_remote_addr  10m;
        log_format '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
        include /alidata/server/nginx/conf/vhosts/*.conf;
        upstream nodejs {
                    server 127.0.0.1:3000;
            }
        server {
        listen 443;
        server_name location;
        ssl on;
        root /alidata/www/api/;
        index index.html index.htm;
        ssl_certificate   /alidata/server/nginx/cert/****************.pem;
        ssl_certificate_key  /alidata/server/nginx/cert/****************.key;
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
    location / {
     proxy_pass http://nodejs;
      }
    location ~.*\.(ico|jpe?g|png)$ {
    }
    #    location / {
    #       root html;
    #        index index.html index.htm;
    #    }
    }
    }
    
    
    
    

    已经贴出的我conf配置文件,可以参考,监听3000端口以及配制证书都在这个文件里修改

    下边是阿里云申请免费证书的地址
    https://common-buy.aliyun.com...

    阿里云也有配置HTTPS的具体示例

    Antwort
    0
  • StornierenAntwort