MyUrls 短链网站安装教程 (Debian 12 + Docker 版)

MyUrls 短链网站安装教程 (Debian 12 + Docker 版)

自建一个MyUrls的短链网址,支持跨域请求,方便前端调用

第1步: 准备

准备:1.解析好的域名 2. 1G内存以上的vps,debian12系统,1G内存以下可能会因为内存不足而启动失败 3.finalshell的ssh工具

finalshell下载链接:https://www.hostbuf.com/t/988.html

用finalshell连接好vps后,安装必要的工具,运行以下命令

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git unzip

第2步: 安装 Docker & Docker Compose

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

sudo systemctl enable docker
sudo systemctl start docker

sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

第3步: 克隆项目 MyUrls

git clone https://github.com/CareyWang/MyUrls.git
cd MyUrls
cp .env.example .env

修改 .env 配置

nano .env

会出现下面代码:

MYURLS_PORT=8080
MYURLS_DOMAIN=你的域名
MYURLS_PROTO=https

MYURLS_DOMAIN=你的域名 这里填写你解析好的域名,如:MYURLS_DOMAIN=s.cin.com

其他的不要动

然后ctrl+x 按Y保存,按Enter确定

第4步: 启动 MyUrls

docker compose up -d

启动后,测试: http://服务器IP:8080是否能打开 MyUrls 网站

第5步: 安装 Nginx 并设置反向代理

安装 Nginx

sudo apt install -y nginx

修改配置

来到finalshell 文件选项这里,打开这个路径地址:/etc/nginx/sites-available/default

图片[1]-MyUrls 短链网站安装教程 (Debian 12 + Docker 版)-元墨博客

双击 default 打开 将下面的nginx配置全选复制粘贴替换掉default里的内容

# HTTP 重定向 HTTPS
server {
    listen 80;
    listen [::]:80;
    server_name 你的域名;
    return 301 https://$host$request_uri;
}

# HTTPS MyUrls 透释
server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name 你的域名;

    ssl_certificate /etc/letsencrypt/live/你的域名/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/你的域名/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        # 跨域支持
        add_header Access-Control-Allow-Origin *;
        add_header Access-Control-Allow-Methods "GET, POST, OPTIONS, PUT, DELETE";
        add_header Access-Control-Allow-Headers "Authorization, Origin, X-Requested-With, Content-Type, Accept";

        if ($request_method = OPTIONS) {
            return 204;
        }
    }
}

将上面的四个“你的域名”替换成你自己已经解析好的域名

重启 Nginx

sudo nginx -t
sudo systemctl reload nginx

第6步: 设置 HTTPS 证书 (Let’s Encrypt)

安装 Certbot

sudo apt install -y certbot python3-certbot-nginx

一键预配置证书

sudo certbot --nginx -d 你的域名

同样,将其中“你的域名”替换成你自己的域名

按提示输入邮箱,同意协议,输入你的邮箱,其余该输入y就输入y

最后

浏览器访问,https://你的域名

大公告成,支持跨域请求,意思你的其他网站前端可以调用这个短链网址

© 版权声明
THE END
喜欢就支持一下吧
点赞386 分享
相关推荐