next.js 在Raspberry Pi托管自定义域名网站

y0u0uwnf  于 2022-11-23  发布在  其他
关注(0)|答案(1)|浏览(104)

我做了一个动态的nextjs网站,一切都如我所料,但我不知道如何在我的raspberry pi 4上托管它.我自己的SSL证书和一个DNS,我想使用.我很乐意接受任何类型的答案,可能包括第三方网络服务或软件,如Docker,AWS,或Replit如果没有答案.

n53p2ov0

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地址。

相关问题