也曾想过自己写一个短域名服务,毕竟原理还是相当简单的。但是前端是真的难搞,我是真的玩不来。既然已经有造好的轮子,干嘛还自己造,是吧。这个Polr就是一个非常好用的短域名服务,功能也比较完善。在这里记录一下部署的过程。最近折腾docker,这玩意在docker中表现挺诡异的,我准备切换成现有的yourls的docker了。
程序依赖
- Apache, nginx, IIS, or lighttpd (Apache preferred)
- PHP >= 5.5.9
- MariaDB or MySQL >= 5.5, SQLite alternatively
- composer
- 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
本人使用环境
- Ubuntu 18.04 LTS
- Nginx 1.14.0
- PHP 5.6.36
- Mysql 8.0.11
- Composer 1.7.1
环境安装
LNMP
我使用的是军哥的LNMP一键脚本,点击这里前往官网。
Composer
Composer的安装,我在之前的文章已经叙述过了。请参考:Ubuntu 安装使用 Composer。
下载源代码
1 2 3 4 5
|
sudo su #使用 root 权限 cd /home/wwwroot git clone https://github.com/cydrobolt/polr.git --depth=1 chmod -R 755 polr chown -R www:www polr
|
通过composer安装依赖
1 2
|
cd polr composer install --no-dev -o
|
配置虚拟主机
以nginx为例,以下是官方配置。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
# Upstream to abstract backend connection(s) for php upstream php { server unix:/var/run/php-fpm.sock; server 127.0.0.1:9000; }
# HTTP
server { listen *:80; root /home/wwwroot/polr/public; index index.php index.html index.htm; server_name example.com; # Or whatever you want to use
# return 301 https://$server_name$request_uri; # Recommended for public, internet-facing, websites.
location / { try_files $uri $uri/ /index.php$is_args$args; # rewrite ^/([a-zA-Z0-9]+)/?$ /index.php?$1; }
location ~ \.php$ { try_files $uri =404; include /etc/nginx/fastcgi_params;
fastcgi_pass php; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param HTTP_HOST $server_name; } }
# HTTPS
#server { # listen *:443 ssl; # ssl_certificate /etc/ssl/my.crt; # ssl_certificate_key /etc/ssl/private/my.key; # root /home/wwwroot/polr/public; # index index.php index.html index.htm; # server_name example.com; # # location / { # try_files $uri $uri/ /index.php$is_args$args; # # } # # location ~ \.php$ { # try_files $uri =404; # include /etc/nginx/fastcgi_params; # # fastcgi_pass php; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # fastcgi_param HTTP_HOST $server_name; # } #}
|
创建数据库
登入mysql
创建数据库,名字任取,安装时会用到。
1
|
CREATE DATABASE polrdb;
|
退出mysql
进行安装
复制初始.env
访问http://你设定的地址/setup/
即可进行安装,网页上都有详细解释,就不在这里多说了。
需要注意的是,当安装完成后,只能在polr
文件夹中的.env
文件修改设置。你将无法再次访问安装页面。
例子
我个人部署的短域名服务:ISZY Short URL。有需要的可以使用。
![]()
夜河资源网提供的所有内容仅供学习与交流。通过使用本站内容随之而来的风险以及法律责任与本站无关,所承担的法律责任由使用者承担。
一、如果您发现本站侵害了相关版权,请附上本站侵权链接和您的版权证明一并发送至邮箱:yehes#qq.com(#替换为@)我们将会在五天内处理并断开该文章下载地址。
二、本站所有资源来自互联网整理收集,全部内容采用撰写共用版权协议,要求署名、非商业用途和相同方式共享,如转载请也遵循撰写共用协议。
三、根据署名-非商业性使用-相同方式共享 (by-nc-sa) 许可协议规定,只要他人在以原作品为基础创作的新作品上适用同一类型的许可协议,并且在新作品发布的显著位置,注明原作者的姓名、来源及其采用的知识共享协议,与该作品在本网站的原发地址建立链接,他人就可基于非商业目的对原作品重新编排、修改、节选或者本人的作品为基础进行创作和发布。
四、基于原作品创作的所有新作品都要适用同一类型的许可协议,因此适用该项协议, 对任何以他人原作为基础创作的作品自然同样都不得商业性用途。
五、根据二〇〇二年一月一日《计算机软件保护条例》规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可不经软件著作权人许可,无需向其支付报酬!
六、鉴此,也望大家按此说明转载和分享资源!本站提供的所有信息、教程、软件版权归原公司所有,仅供日常使用,不得用于任何商业用途,下载试用后请24小时内删除,因下载本站资源造成的损失,全部由使用者本人承担!