需求:使用一台服务器的80端口部署api+web+接收微信 接口配置信息 的GET请求
前端开发使用JS-SDK来调用腾讯地图的功能并在公众号正常使用.
开发时只有一台腾讯云的服务器,需要同时配置微信公众号的 接口配置信息, JS接口安全域名.[见微信公众号配置]
nginx配置[80端口的server]:
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;
# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;
#root /var/www/html;
# Add index.php to the list if you are using PHP
#index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
# 此处配置是接收微信公众号 接口配置信息 的请求,微信服务器需要发送HTTP GET请求给当前server的80端口,只能是80端口.
# 后端使用的flask+uwsgi,此处配置保证转发了HTTP请求,对应后端的flask api可用.
include uwsgi_params;
uwsgi_pass 127.0.0.1:5000;
}
#location /v1/api/ {
# 此处配置的是项目的api接口服务,此处配置和上面的location / 合一起了.
# include uwsgi_params;
# uwsgi_pass 127.0.0.1:5000;
#}
# 此处的需求:
# 访问http://IP/sites/index.html 能正常访问index.html页面,同时保证api可用.
location /sites {
alias /root/sites; # web项目的目录
index index.html; # index.html
try_files $uri @rewriteweb;
}
location @rewriteweb {
rewrite ^/sites/(.*)$ /sites/index.html break; # 注意此处的break
}
}