我在数字海洋上使用nginx代理方法使用https解析服务器。我的解析服务器网址类似于https://my-domain.com/myappname。我已将此索引添加到index.js文件中我的解析服务器的publicServerURL上,以用于mailgun和文件。
我还在Parse Dashboard的config.json文件中将此链接作为serverURL添加了。我试图通过Parse Dashboard上传pffile(图像),但显示无法连接到Parse API。当我将config.json文件中的serverURL从https://my-domain.com/myappname更改为http:// server-ip:port / parse时,它可以正常工作,但尝试时出现错误从数据库中删除一行(使用https,此功能可以正常工作)
以下是我在/etc/nginx/sites-enabled/my-domain.com中的文件(我还将网站与解析服务器托管在同一服务器中):
server {
root /var/www/my-domain.com/html;
index index.php index.html index.htm index.nginx-debian.html;
client_max_body_size 100m;
server_name my-domain.com www.my-domain.com;
location / {
if ($request_uri ~ ^/(.*)\.html$) {
return 302 /$1;
}
#try_files $uri $uri/ =404;
try_files $uri $uri.html $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
location /myparseapp {
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/parse;
proxy_ssl_session_reuse off;
proxy_set_header Host $http_host;
proxy_redirect off;
}
location = /favicon.ico { log_not_found off; access_log off; }
location = /robots.txt { log_not_found off; access_log off; allow all; }
location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
expires max;
log_not_found off;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/my-domain.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/my-domain.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = www.my-domain.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = my-domain.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
listen [::]:80;
server_name my-domain.com www.my-domain.com;
return 404; # managed by Certbot
}
我也无法通过网络浏览器访问上传的PFFile(image)。网址https://my-domain.com/myappname/files/11d51c92517ace2d17bc376f2da99a50_default.png表示404 Not Found nginx / 1.14.0(Ubuntu)
终于我找到了解决方案!!!
我用subdomain.my-domain.com
代替了my-domain.com/myapp
,在nginx config中,我删除try_files $uri $uri/ =404;
并键入了以下内容
location / {
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/parse/;
proxy_ssl_session_reuse off;
proxy_set_header Host $http_host;
proxy_redirect off;
}
您必须在proxy_pass的末尾带有/,图像才能在浏览器上工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句