Last active
January 22, 2024 06:53
-
-
Save dweldon/6148634 to your computer and use it in GitHub Desktop.
This is an example of how to configure nginx to serve a meteor app.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
server { | |
listen [::]:80; | |
listen 80; | |
server_name app.example.com; | |
return 301 https://$server_name$request_uri; | |
} | |
server { | |
listen [::]:443 ssl http2; | |
listen 443 ssl http2; | |
server_name app.example.com; | |
ssl on; | |
ssl_certificate /etc/nginx/ssl/ssl.crt; | |
ssl_certificate_key /etc/nginx/ssl/ssl.key; | |
location = /favicon.ico { | |
root /home/ubuntu/app/bundle/programs/web.browser/app; | |
access_log off; | |
expires 1w; | |
} | |
location ~* "^/[a-z0-9]{40}\.(css|js)$" { | |
root /home/ubuntu/app/bundle/programs/web.browser; | |
access_log off; | |
expires max; | |
} | |
location ~ "^/packages" { | |
root /home/ubuntu/app/bundle/programs/web.browser; | |
access_log off; | |
} | |
location / { | |
proxy_pass http://localhost:3000; | |
proxy_http_version 1.1; | |
proxy_set_header Upgrade $http_upgrade; | |
proxy_set_header Connection "upgrade"; | |
proxy_set_header Host $host; | |
} | |
} |
I run meteor on localhost:3000 as a service, and my nginx looks like:
``
server {
listen 80;
server_name app.example.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}
}
``
I tried your config @radlws but it shows me the nginx welcome page. Any suggestions ?
you should also serve static content from public which is found under bundle/programs/app
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hi there,
I'm trying to use this configuration for my app, but I'm getting 502 Bad Gateway errors. I'm doing my app in a subdirectory, I don't know if that makes a difference. My goal is to serve the app (app name is "gnf") at https://depot.works/gnf/ (I have another static website planned for the depot.works/ root). If you're curious what my app is, I have it running and in use at gnf.meteor.com, and I'll be migrating that mongo data over too. I have it redirecting from gnf.depotstreetmarket.com to depot.works/gnf, and the redirect works, but when I land on /gnf I get a 502. And yes, my TLD is .works, it's a weird new one and I like it :)
Here's what I've got in my /etc/nginx/sites-available/gnf, I don't know if you'll see this but I'd appreciate anyone's help: