我正在设置一个Ghost博客,作为基于React的SPA。所有东西都托管在DO。
这意味着我没有很好的方法来使用Express,这就是Ghost的功能。
对于我的前端,我需要始终提供索引响应,无论URL如何。
现在这是我的nginx配置,除了SPA组件外,一切正常。
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name SITE;
root /var/www/ghost/system/nginx-root;
ssl_certificate /etc/letsencrypt/SITE/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/SITE/SITE.key;
include /etc/nginx/snippets/ssl-params.conf;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:2369;
}
location ~ /.well-known {
allow all;
}
client_max_body_size 50m;
}
我在这里尝试了许多现有的答案,为SPA设置Nginx但没有成功。例如,try_files $uri $uri/index.html =404;
因为我使用的是proxy_pass
,我的Express应用程序中是否仅限于这种行为?这不太理想,因为编辑博客代码会破坏我的升级。