我已经按照这个教程来在DigitalOcean Ubuntu上安装parse-server 。 我还安装了parse-dashboard 。
除了我不能使用SSL curl之外,它一切正常。 普通的HTTP工作正常。 即:
curl -H "X-Parse-Application-Id: AppID" https://mywebsite/parse/classes/GameScore
返回Cannot GET /classes/GameScore 。
我也不能通过SSL访问parse-dashboard ,但是HTTP工作正常(这意味着我的密钥可能会泄漏)。
POST请求返回一个Cannot POST 。
我曾尝试启用/禁用防火墙( ufw ),但它不会改变一件事情。
我可以使用SDK保存数据,虽然速度很慢。 我的nginxconfiguration文件与本教程中的相同。
有任何想法吗?
编辑:
Nginxconfiguration:
# HTTP - redirect all requests to HTTPS server { listen 80; listen [::]:80 default_server ipv6only=on; return 301 https://$host$request_uri; } # HTTPS - serve HTML from /usr/share/nginx/html, proxy requests to /parse/ # through to Parse Server server { listen 443; server_name your_domain_name; root /usr/share/nginx/html; index index.html index.htm; ssl on; # Use certificate and key provided by Let's Encrypt: ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH'; # Pass requests for /parse/ to Parse Server instance at localhost:1337 location /parse/ { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-NginX-Proxy true; proxy_pass http://localhost:1337/; proxy_ssl_session_reuse off; proxy_set_header Host $http_host; proxy_redirect off; } location / { try_files $uri $uri/ =404; } }
netstat -anlp | grep 443:
netstat -anlp | grep 443 (No info could be read for "-p": geteuid()=1000 but you should be root.) tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN -
HTTPS指南中存在错误,请将proxy_pass设置为
proxy_pass http://localhost:1337/parse/;
curl请求必须在没有端口1337的情况下完成,就像这个一样
curl -H "X-Parse-Application-Id: appID" https://example.com/parse/classes/SomeClassName
仪表板
我解决了这个问题,我SSH隧道到服务器,并连接到仪表板作为本地主机,这意味着你不需要任何凭据,它将运行在本地主机上的http,因为你将通过SSH隧道安全,我也打开仪表板只有当我需要它… 如何设置SSH隧道