https://github.com/xytoki/TCShare

V1安装:https://www.tok9.com/archives/536/

功能

已支持

  • 文件下载
  • 视频播放
  • 多盘
  • 腾讯云函数(SCF)

TODO

  • 其他文件类型的预览
  • 服务器直接输出
  • header,footer,readme
  • 密码加密
  • 防盗链

Demo

这里

注意

  • v2版本由于支持多盘,配置方式以v1不同,请查看config.php仔细填写。v1不再更新。
  • 目录程序需要php7.2
  • PHP禁用函数中的putenv删掉

安装方式:

1.新建网站,php7.2,配置伪静态,最好把证书也安装好

Rewrite规则:

Apache:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]

Nginx:

try_files $uri $uri/ /index.php$is_args$args;

2.上传v2版本程序到网站根目录

v2cx
v2cx

3.去网站根目录新建环境变量文件命名.env.local

复制以下代码,将FD,AK,SK填入其中即可

环境变量配置示例

#   XS 是前缀
#   | -KEY 是配置种类,可选KEY,APP,SEC
#   | | - -ct是key的ID(类似config.php)
#   | | - | - something是配置名称
#   | | - | - | - - - - value在等号右边
#   XS_KEY_ct_something=value

    XS_KEY_ct=ctyun   #必填,值为ctyun
    XS_KEY_ct_FD=     #应用文件夹名
    XS_KEY_ct_AK=     #AK
    XS_KEY_ct_SK=     #SK

#   这里APP后面的可以是任意值,一般就123456下去
#          ↓
    XS_APP_1=/              #挂载路径
    XS_APP_1_NAME=TCShare   #网盘名称
    XS_APP_1_THEME=mdui     #界面主题
    XS_APP_1_BASE=/         #网盘内路径
    XS_APP_1_KEY=ct         #对应上面Key的ID

挂载路径可以不动,网盘名称随便改,多盘应该是把1改成2

4. composer安装依赖

SSH登录,进入到网站根目录composer安装依赖

cd /www/wwwroot/xxx.com/
composer install

提示大写字母警告

Deprecation warning: Your package name xytoki/TCShare is invalid, it should not contain uppercase characters. We suggest using xytoki/tc-share instead. Make sure you fix this as Composer 2.0 will error.

需要打开composer.json

{   
    "name": "xytoki/TCShare", #将此处TCS改成小写
    "description": "TCShare",
    "version": "2.6.0",
    "type": "project",
    "config": {
        "vendor-dir": "_app/vendor"
    },
    "require": {
        "xytoki/scf-flight": "^0.0.5",
        "mikecao/flight": "^1.3",
        "symfony/dotenv": "^5.0"
    }
}

如果提示需要更新

Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. It is recommended that you run `composer update` or `composer update <package name>`.

按要求输入命令composer update

5.访问网盘账号授权地址

1. 打开wangpan.com/-install

wangpan.com是你自己网站域名

2. 点击Click here to authorize 跳转授权页面,

v2sq
v2sq

3. 输入网盘账号密码点击授权

  ![v2sq189](https://imgbak.tok9.com/189/v2sq189.png)

如果没有使用config.php,TCShare将自动写入获得的accesstoken,无需手动修改文件。

如果还是用config.php配置的,需要将获得的Token填入config.php

若将网盘挂载到/disk,则授权地址会变成/disk/-install/disk/-renew,回调地址会变成/disk/-callback,请注意区分。

其他

记得每个月访问/-renew续期一次。续期的时候不需要重新填写token。

去网站Nginx配置中注销掉关于图片的代码

#禁止访问的文件或目录
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }
   
    #一键申请SSL证书验证目录相关设置
    location ~ \.well-known{
        allow all;
    }
   
    #location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    #{
    #    expires      30d;
    #    error_log off;
    #    access_log off;
    #}
   
    location ~ .*\.(js|css)?$
    {
        expires      12h;
        error_log off;
        access_log off;
    }

关于环境变量、.envconfig.php

v2.5增加了对.env和环境变量的支持,因此通过config.php配置已被弃用(但仍然兼容)。
如果使用v2.5以上的版本,并未使用config.php配置,TCShare将自动写入获得的accesstoken,无需手动修改文件。

在腾讯云云函数(SCF)运行

  1. 下载程序
  2. 使用composer安装依赖
  3. 上传到腾讯云,函数名是index.main_handler
  4. 设置环境变量,然后安装