基于PHP的短链接服务

        项目有时候会用到短链接服务,没有找到合适的第三方服务,所以自己写了一个,源码下载在最底下。该服务主要是生成短链接识别码,具体的短链接域名还是需要用自己的,域名解析到服务器里,再通过nginx做一下反向代理即可。

项目基于PHP7.0以上 + SQLlite运行,由于Macbook自带了SQLlite就没有折腾安装了,其它系统安装SQLlite见这里:

https://www.runoob.com/sqlite/sqlite-installation.html

确认安装好数据库后,下载源码解压并将源码放到合适的地方,比如:

/var/www/short_url

进入项目根目录,使用以下命令直接启动服务(端口号根据具体情况修改,这里使用8080):

cd /var/www/short_url

php -S localhost:8080

最后一步,将nginx解析到 /var/www/short_url中即可,比如(link.cn为例):

server {

        listen 80;

        server_name link.cn;

        root /var/www/short_url;

        index index.php;

        try_files $uri /index.php?$args;

        # PHP的配置根据服务器的情况来,这里使用了9000端口

        location ~ \.php$ {

                fastcgi_pass    127.0.0.1:9000;

                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

                include        fastcgi_params;

        }

}

现在,服务即可正常运行,服务对外暴露一个API用来创建短链接,其地址为:

link.cn/create 

我们可以直接post一个 application/json 数据来创建短链接,格式如下:

{

        "origin": "https://download.csdn.net/download/weixin_43901089/21118925",

        "expire_time": 1631872507

}

附上POSTMAN请求示例:

如果创建成功,将返回数据的 data.code 拼接到域名上,即是最终的短链接,比如:

link.cn/uD5TBt7G

注:请求中的到期时间是一个秒级时间戳,不是毫秒时间戳,到期后对应的短链接即失效。

源码下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘尾田

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值