使用基於 PHP 的開源軟件 YOURLS 搭建短鏈接地址服務
使用基於 PHP
的開源軟件 YOURLS搭建
系統配置 php7.1+mysql5.7+nginx
下載源代碼
git clone https://github.com/YOURLS/YOURLS.git
cd YOURLS
mv user/config-sample.php user/config.php
修改config.php裏面的配置參數,依據自己的環境自行修改
define( ‘YOURLS_DB_USER‘, ‘root‘ );
define( ‘YOURLS_DB_PASS‘, ‘123456‘ );
define( ‘YOURLS_DB_NAME‘, ‘yourls‘ );
define( ‘YOURLS_DB_HOST‘, ‘localhost‘ );
//上面是數據信息不用多說
define( ‘YOURLS_SITE‘, ‘http://test.com‘ ); //你自己服務器的域名 用最短的,短地址也是基於這個生成。
define( ‘YOURLS_HOURS_OFFSET‘, ‘+8‘); //時區偏移
define( ‘YOURLS_LANG‘, ‘zh_CN‘ ); //這個語言默認是英文,沒有中文包,需要自己去 https://github.com/guox/yourls-zh_CN/下載,放到 user/languages 裏面
define( ‘YOURLS_UNIQUE_URLS‘, true ); //短地址是否唯一
define( ‘YOURLS_COOKIEKEY‘, ‘A2C7&H~r80pTps{nIfI8VFpTxnfF3c)[email protected]#{nDUh‘ );//加密cookie 去 http://yourls.org/cookie 獲取
$yourls_user_passwords = array(
‘admin‘ => ‘123456‘ /* Password encrypted by YOURLS */ , //用戶名=>密碼 可填多個 登錄成功後這裏的明文密碼會被加密
define( ‘YOURLS_DEBUG‘, false ); //是否開啟調試
define( ‘YOURLS_URL_CONVERT‘, 62 ); //使用36進制 還是62進制 這個最好一開始設好不要修改,避免地址沖突,建議62進制
$yourls_reserved_URL = array(
‘porn‘, ‘faggot‘, ‘sex‘, ‘nigger‘, ‘fuck‘, ‘cunt‘, ‘dick‘, //排除一下短地址,這些地址是不會生成的
);
配置nginx,這裏域名以test.com為例
server {
listen 80;
server_name test.com;
root /www/YOURLS/;
index index.php;
location / {
try_files $uri $uri/ /yourls-loader.php$is_args$args;
}
location ~ \.php$ {
root /www/YOURLS/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
重啟nginx
訪問 http://test.com/admin 選擇安裝 會提示安裝成功
短地址默認是是按照順序生成,從1開始,有可能我們想不按照這樣順序,可以推薦用時間戳來生成
只需要修改 includes/functions.php 272行左右
將 $id = yourls_get_next_decimal(); 改為 $id = time();
api接口生成
請求地址:http://域名//yourls-api.php
參數:username(用戶名)、password(密碼)、format(格式 json)、url(長地址)、action(功能,shorturl)
返回:
{ "url": { "keyword": "1H7fa7", "url": "http://www.baidu.com/download/index.html?player_id=2", "title": "下載頁面", "date": "2019-03-22 08:04:23", "ip": "127.0.0.1" }, "status": "success", "message": "http://www.baidu.com/download/index.html?player_id=2 已保存為", "title": "下載頁面", "shorturl": "http://test.com/1H7fa7", "statusCode": 200 }
上面的 shorturl 就是生成的短鏈接,也可以在後臺直接生成指定的短鏈接。
每個短鏈接後面拼接一個 + ,就可以查看這個鏈接的點擊情況,例如:http://test.com/1H7fa7+
shorturl
使用基於 PHP 的開源軟件 YOURLS 搭建短鏈接地址服務