利用Polr搭建一个多用户的短网址系统-Polr中文版

之前分享过yourls这款短网址源码,yourls没有会员系统,其他用户无法管理自己的短网址,不过部署简单,虚拟主机也可以安装使用。
现在分享的这款Polr源码,可以开放注册,多用户使用,但一般情况下,需要VPS才能搭建使用。
安装环境:

1、Apache, nginx;
2、MySQL 5.5或以上;
3、Composer;
4、PHP 5.5或以上;在禁用函数中去掉putenv以及proc_open;
5、PHP requirements:
OpenSSL PHP Extension
PDO PHP Extension
PDO MySQL Driver (php5-mysql on Debian & Ubuntu, php5x-pdo_mysql on FreeBSD)
Mbstring PHP Extension
Tokenizer PHP Extension
JSON PHP Extension
PHP curl extension

远程SSH连接到服务器后,下载源码到WEB网站目录,本文的网站是 https://setl.ink ,所以目录设置为 /setl.ink ,可按需修改:

  1. cd /home/wwwroot
  2. git clone https://github.com/cydrobolt/polr.git --depth=1
  3. chmod -R 755 polr
  4. mv polr setl.ink && cd setl.ink
  5. cp .env.setup .env

接着安装Composer:

  1. curl -sS https://getcomposer.org/installer | php
  2. php composer.phar install --no-dev -o

如果提示失败,可以尝试:

  1. rm -rf composer.lock
  2. php composer.phar install --no-dev -o

设置一下文件所有者权限:

chown -R www:www /home/wwwroot/setl.ink

这样源码就已经部署好了,然后在LNMP环境或宝塔面板添加网站 setl.ink ,新建数据库以及申请SSL证书等,并指定运行目录为 /home/wwwroot/setl.ink/public ,宝塔面板可以直接在网站设置里面,将运行目录设置为 /public ,LNMP环境默认不允许跨目录运行,需要手动设置一下:

  1. wget https://dl.lianghg.com/Softs/Linux/Shell/remove_open_basedir_restriction.sh
  2. ./remove_open_basedir_restriction.sh
  3. /home/wwwroot/setl.ink/public

/home/wwwroot/setl.ink/public 中的 .user.ini 删除,重启nginx、php-fpm即可。
接着在网站nginx配置文件添加:

location / {
        try_files $uri $uri/ /index.php$is_args$args;
}

设置完成后,访问 setl.ink/setup 进行安装,填上数据库信息、管理员信息等。
其中,有一项:
Default URL Ending Type:
选择 Use base62 or base32 counter ,则短网址会按顺序0、1、2、3生成,如果选择另一项,则短网址会随机多字符生成。
填好信息后,点击INSTALL完成安装。
如果用的是国外的服务器,可能时区会设置为当地的,如有需要,可以手动修改为国内时区,在网站根目录下的.env文件最后添加:

#Time Zone
APP_TIMEZONE=Asia/Shanghai

如果设置了SMTP,根据需要,额外添加以下其中一行到.env文件中:

#如果使用25端口,则添加:
MAIL_ENCRYPTION=null
#如果使用465、597等ssl端口,则添加:
MAIL_ENCRYPTION=ssl

由于Polr源码没有中文版,需要汉化时,可以修改 /resources/views/public/js 文件夹中的文件信息。
或,使用本人轻量汉化的版本:

该资源需登录评论本文后刷新网页查看,如果没有账号,可以先进行注册


本文章参考于GitHub @cydrobolt

5 条评论 on “利用Polr搭建一个多用户的短网址系统-Polr中文版

  1. 头像match
    Chrome 90.0.4430.93 | Windows 10  
    河南省信阳市 电信

    搭了N次,老是出错。。。头都大了。

发表评论