前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >短链接 url 压缩程序 Polr

短链接 url 压缩程序 Polr

作者头像
eallion
发布2022-12-20 14:02:04
1K0
发布2022-12-20 14:02:04
举报
文章被收录于专栏:大大的小蜗牛大大的小蜗牛

警告

本文最后更新于 2017-04-08,文中内容可能已过时。

开源项目地址:https://github.com/Cydrobolt/polr

案例:

我一直在用这个短链接压缩程序,最近刚好有朋友问到,就写一下教程。 其实很简单,虚拟主机都能安装,但是推荐用 vps 安装,因为虚拟主机只能使用 1.5.1 版本。

Oneinstack LNMP 为例

服务器要求

  • Apache, nginx, IIS, or lighttpd (作者建议使用 Apache,我是使用的 Nginx)
  • PHP >= 5.5.9
  • MariaDB or MySQL >= 5.5, SQLite 三个都可以
  • composer
  • PHP 扩展:
    • OpenSSL
    • PDO
    • php5-mysql
    • Mbstring
    • Tokenizer
    • JSON

1、下载源码

代码语言:javascript
复制
# 切换到 root
sudo su 
# 假设准备使用的域名是 go.eallion.com,网站根目录:/data/wwwroot/go.eallion.com
cd /data/wwwroot/go.eallion.com 
# git 下载源码
git clone https://github.com/cydrobolt/polr.git --depth=1 
# 设置权限
chmod -R 755 polr
chown -R www:www polr

2、用 composer 安装

代码语言:javascript
复制
cd polr
curl -sS https://getcomposer.org/installer | php
php composer.phar install --no-dev -o

3、配置虚拟主机 conf

如果没有 php5-fpm,则需要安装

代码语言:javascript
复制
apt install php5-fpm
# 配置网站配置文件
vim /usr/local/nginx/conf/vhost/go.eallion.com.conf

我的配置:

代码语言:javascript
复制
upstream php {
    server unix:/var/run/php5-fpm.sock;
    server 127.0.0.1:9000;
}
server {
listen 80;
listen 443 ssl http2;
ssl_certificate /usr/local/nginx/conf/ssl/go.eallion.com.crt;
ssl_certificate_key /usr/local/nginx/conf/ssl/go.eallion.com.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_timeout 10m;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_buffer_size 1400;
add_header Strict-Transport-Security max-age=15768000;
ssl_stapling on;
ssl_stapling_verify on;
server_name go.eallion.com;
access_log /data/wwwlogs/go.eallion.com_nginx.log combined;
index index.html index.htm index.php;
root /html/go.eallion.com/polr/public; #注意要配置到 public 目录
if ($ssl_protocol = "") { return 301 https://$host$request_uri; }

location ~ .*\.(wma|wmv|asf|mp3|mmf|zip|rar|jpg|gif|png|swf|flv)$ {
    valid_referers none blocked *.go.eallion.com go.eallion.com www.go.eallion.com;
    if ($invalid_referer) {
        #rewrite ^/http://www.linuxeye.com/403.html;
        return 403;
        }
    }
location ~ [^/]\.php (/|$) {
    #fastcgi_pass remote_php_ip:9000;
    fastcgi_pass unix:/dev/shm/php-cgi.sock;
    fastcgi_index index.php;
    include fastcgi.conf;
    }
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
    expires 30d;
    access_log off;
    }
    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 /usr/local/nginx/conf/fastcgi_params;

            fastcgi_pass    php;
            fastcgi_index   index.php;
            fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param   HTTP_HOST       $server_name;
    }
location ~ .*\.(js|css)?$ {
    expires 7d;
    access_log off;
    }

4、准备 MySQL 数据库

代码语言:javascript
复制
CREATE DATABASE polrdatabasename;

其实用 phpMyAdmin 更方便。

5、安装

先复制一个.env 文件

代码语言:javascript
复制
cp .env.setup .env

因为一直是在 root 账号下操作,安装之前再修改一下权限

代码语言:javascript
复制
chown -R www:www /data/wwwroot/go.eallion.com/polr

然后就可以在线安装了 打开域名,如:https://go.eallion.com 会自动跳转到安装页面,按提示一步步完成就可以了。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-04-082,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 服务器要求
  • 1、下载源码
  • 2、用 composer 安装
  • 3、配置虚拟主机 conf
  • 4、准备 MySQL 数据库
  • 5、安装
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档