我做了一个动态的nextjs网站,一切都如我所料,但我不知道如何在我的raspberry pi 4上托管它.我自己的SSL证书和一个DNS,我想使用.我很乐意接受任何类型的答案,可能包括第三方网络服务或软件,如Docker,AWS,或Replit如果没有答案.
n53p2ov01#
有几种方法可以做到这一点,但最直接的方法是使用反向代理。这将允许您在Raspberry Pi上托管您的Next.js网站,同时仍然可以通过域名或子域访问它。要设置反向代理,首先需要在Raspberry Pi上安装一个Web服务器。最常用的选择是Nginx。安装Nginx后,您需要将其配置为Next.js网站的反向代理。最后一步是将您的域名或子域指向Raspberry Pi的IP地址。1.使用反向代理将Raspberry Pi设置为Web服务器。1.安装NGINX:
sudo apt update sudo apt install nginx
1.将NGINX配置为反向代理:
sudo nano /etc/nginx/sites-available/default
1.将以下行添加到文件末尾:
server { listen 80; server_name yourdomain.com www.yourdomain.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; proxy_cache_bypass $http_upgrade; } }
1.保存文件并退出。1.启用新配置:
sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/
1.重新启动NGINX:
sudo systemctl restart nginx
1.为您的域配置一个A记录,使其指向Raspberry Pi的IP地址。
1条答案
按热度按时间n53p2ov01#
有几种方法可以做到这一点,但最直接的方法是使用反向代理。这将允许您在Raspberry Pi上托管您的Next.js网站,同时仍然可以通过域名或子域访问它。
要设置反向代理,首先需要在Raspberry Pi上安装一个Web服务器。最常用的选择是Nginx。安装Nginx后,您需要将其配置为Next.js网站的反向代理。最后一步是将您的域名或子域指向Raspberry Pi的IP地址。
1.使用反向代理将Raspberry Pi设置为Web服务器。
1.安装NGINX:
1.将NGINX配置为反向代理:
1.将以下行添加到文件末尾:
1.保存文件并退出。
1.启用新配置:
1.重新启动NGINX:
1.为您的域配置一个A记录,使其指向Raspberry Pi的IP地址。