Nginx之FastDFS-nginx-module-FastDFS安装问题

Ubuntu20.04中fastdfs,nginx的安装和配置(apt-get安装nginx添加fastdfs-nginx-module模块) Ubuntu20.04中fastdfs,nginx的安装和配置 环境准备: 编译环境: Ubuntu20.04 使用的系统软件: fastdfs-6.07 fastdfs-nginx-module-1.22 libfastcommon-1.0.53 nginx-1.18.0 安装libfastcommon: git clone https://github.com/happyfish100/libfastcommon.git --depth 1 cd libfastcommon/ ./make.sh &am 阅读详情
  1. sudo apt install openssl libssl-dev
  2. sudo apt install libpcre3 libpcre3-dev
  3. sudo apt install zlib1g-dev

在用文件地址访问时,一直报404错误,在网上搜了很多解决办法,都尝试和排错后,依然没有解决nginx404错误,下面总结下 404报错有哪些原因和解决办法,

1、nginx.conf 配置的问题
解决办法:将user nobody 改成 user root
2、tracker.conf 中http.server_port 、nginx 端口的配置 以及storage.conf 中 http.server_port 三个地方的端口号配置不一致
解决办法:将这三个地方的端口配置成统一的端口号
3、mod_fastdfs.conf 中的配置url_have_group_name 配置成false
解决办法:url_have_group_name = true 改成true

4、fastdfs_master/conf 中的 http.conf 和mime.types 未拷贝到 /etc/fdfs/ 目录下(我犯的错)
解决办法:将fastdfs_master/conf 中的 http.conf 和mime.types 未拷贝到 /etc/fdfs/ 目录下,然后重启storage 和tracker,以及重启nginx

linux 安装fastDFS linux安装fastDFS 阅读详情

相关推荐

Centos7 上安装 FastDFS-6.06和nginx-1.18.0及fastdfs-nginx-module

Centos7 上安装 FastDFS-6.06前言一、准备安装包二、安装编译工具及库文件三、解压四、编译安装libfastcommon五、编译安装fastdfs1.编译安装2.配置FastDFS跟踪器(Tracker)1、编辑tracker.conf 文件2.创建数据和日志存放路径3.启动、检测、设置开机启动3.配置 FastDFS 存储 (Storage)1.编辑storage.conf文件2.创建Storage基础数据目录(base_path,base_path0路径)3.启动、检查、开机自启、关闭4

oCastle的博客 884

nginx安装fastdfs-nginx-module和配置常见问题

安装理由通过nginx查看和下载文件 准备资源: fastdfs-5.11.tar.gz和fastdfs-nginx-module_v1.16.tar.gz和nginx 使用到的nginx的常见命令: 到nginx目录:cd /usr/local/nginx/sbin 启动nginx:./nginx -t 重启nginx:./nginx -s reload 马上开始安装: nginx依赖包安装 [r...

天眼 的博客 3212

蓝牙耳机充电仓——功能框架

数据传输:大部分充电仓会跟耳机通信,控制耳机开机、关机和进入可搜索模式等等。蓝牙耳机给大家的生活带来便利,来讲讲TWS蓝牙耳机的搭档充电仓吧!方便携带:如果耳机单独带着,指定能弄丢一个,有了充电仓就安全多了。收纳保护:把珍爱的耳机放入充电仓里,防止丢失、磕碰、刮花等。给耳机充电:提供电力补给,让耳机持续使用。

改变自己现在能改变的,珍惜自己现在所拥有的 8948

Linux环境安装FastDFS及整合Nginx遇到的bug及解决方法

背景 我的是阿里云ecs服务器,CentOS 7安装的,下面是我安装过程中遇到的问题 问题&解决方法 问题1: ERROR - file: storage_ip_changed_dealer.c, line: 163, connect to tracker server xx.xx.xx.xx:22122 fail, errno: 4, error info: Interrupted sy...

Gebo的博客 1479

从拆解到调试:用CS5523改造旧款车载显示屏的完整记录(MIPI转eDP方案)

本文详细记录了使用CS5523芯片将旧款车载显示屏从MIPI接口改造为eDP驱动的完整过程。通过对比LT8911等芯片,选择CS5523实现低功耗、高兼容性的显示升级,涵盖硬件改造、固件配置及调试技巧,最终成功提升显示效果200%。

web99的专栏 344

Python爬虫实战:5分钟抓取东方财富股票数据并保存为CSV

在投资分析与量化研究的日常工作中,获取结构化、可用的金融数据往往是第一步。对于个人投资者和量化入门者而言,如何高效获取A股全市场行情,常常面临网页动态加载、反爬机制与数据整理繁琐等挑战。本文从数据采集的基础概念出发,介绍如何利用Python这一通用编程语言,通过requests库请求财经网站公开的HTTP接口,获取返回的JSON数据,再借助pandas进行字段映射、数据清洗与表格化处理。这种方式相比传统页面解析具有响应快、结构稳定、易于批量操作的显著优势,尤其适合构建个人股票数据池、验证选股策略或进行市场情

weixin_33146151的博客 251

Linux Centos7.5 安装FastDFS以及遇到的坑

目录: 附:Linux Centos7.5安装FastDFS所需软件 准备工作 1、安装编译工具及库文件 2、上传所需文件到linux虚拟机上 3、安装FastDFS 4、测试: 5、安装nginx 6、FastDFS与Nginx整合 特别注意: 最后的测试: 前言: 在linux Centos7.5安装FastDFS,感觉真是特别的复杂,安装了两天,终于成功了...

路西法Lucifer 1万+

OrangePi Kunpeng Pro 安装 ROS2 + Gazebo

OrangePi Kunpeng Pro 的优点很明显,内置openEuler,配备PD电源,做到开箱即用;板子设计也不错,风扇噪音不大,散热良好,昇腾芯片又确保小板子的性能,接口丰富是这类板子共同的优点,也很好的继承了下来,甚至还可以外接固态,可靠性大大提升。使用起来,哪怕不用openEuler的话,也可以很方便的刷Ubuntu来实现一些需要依赖的开发工作,这次没有跑AI模型,所以对算力的优势还没有很明显的感受,下次可以试一下yolo跑跑看。

Arcan 1823

Centos下安装FastDFS以及添加nginx模块

Centos下安装FastDFS1. 安装包上传到centos2. 安装依赖2.1 安装GCC依赖2.2 安装unzip工具2.3 安装libevent2.4 安装Nginx所需依赖2.5 安装libfastcommon-master3. 安装FastDFS3.1 编译安装3.2. 校验安装结果4. FastDFS启动配置4.1 编辑tracker配置并启动4.2 编辑storage配置并启动5....

学无止境 1255

CPU、Core、RISC、ARM等的前世今生

CPU、Core、RISC-V 、ARM、ASIC、FPGA、SOC概念及区分

nxin168的博客 1015

Arduino ESP8266自定义配置分区表

ESP8266自定义分区表配置 随着项目的不断开发,项目文件也不断在增大,在没有考虑更换主硬件的条件下,最大开发利用有限资源势在必行,所以今天带来ESP8266自定义分区表的配置。 我这里以版本:2.7.4版本为例,后面的版本也是支持的。 注意:自定义分区表特别要注意和你的硬件相对应,flash芯片的大小决定这个分区是否有效,否则有意想不到的事情发现。 自定义分区表的几个重要参数 /* Flash Split for 4M chips */ /* sketch @0x40200000 (~1019K

perseverance51博客 1725

fastdfs-nginx-module 报错 ERROR - file: ../common/fdfs_global.c, line: 52, the format of filename “gro

fastdfs-nginx-module 报错 ERROR - file: ../common/fdfs_global.c, line: 52, the format of filename "gro介绍问题原因解决方法 介绍 在使用fastdfs作为文件服务器时,上传文件成功后,访问时报如下错误: [2021-12-02 17:10:15] ERROR - file: …/common/fdfs_global.c, line: 52, the format of filename “group1/M00

leenhem的博客 1988

OpenHarmony之Histreamer引擎深度解析:pipeline_core架构如何全面取代GStreamer,一统音视频播放与录制

Histreamer是OpenHarmony多媒体框架的核心媒体引擎,采用架构设计。一个轻量级的媒体引擎组件,提供播放、录制等场景的媒体数据流水线处理。1.播放场景分为如下几个节点:数据源读取、解封装、解码、输出;2.录制场景分为如下几个节点:数据源读取、编码、封装、输出。该引擎从OH5.0开始取代了原有的媒体引擎gstreamer(部分文档还保留较老架构的讲解),提供统一的音视频播放、录制、元数据解析等能力。

m0_67505153的博客 332

安装nginx以及fastdfs-nginx-module 以及遇到的问题

记录安装步骤与遇到的问题 此次安装是在ubuntu18版本 安装包在最后面 1. 解压缩nginx-1.8.1.tar.gz 2. 解压缩fastdfs-nginx-module-master.zip 3.安装nginx的依赖包 { apt-get install build-essential apt-get install libtool apt-get install openssl...

weixin_43477651的博客 3099

YOLO26 无损剪枝:稀疏训练 + 结构化通道裁剪

YOLO26 无损剪枝链路:YOLO26s (7.2M) → 稀疏训练 30 epoch (L1 on BN gamma, lam=0.01) → 阈值剪枝 50% (gamma<quantile(0.5)) → 结构化重建 Conv+BN → 微调 10 epoch (lr=1e-4) → YOLO26n (1.9M, mAP50 0.808, 仅降 0.6%)。核心贡献:稀疏训练让 BN gamma 趋向二元分布 (近 0 或近 1), 剪枝阈值可直接取 median 自动 50% 压缩。

m0_64661770的博客 263

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

解决nginx安装fastdfs-nginx-module失败的问题

nginx安装fastdfs-nginx-module报错:fdfs_define.h: No such file or directory 解决办法就是把fastdfs-nginx-module的config文件的内容完全替换如下即可解决: ngx_addon_name=ngx_http_fastdfs_module if test -n "${ngx_module_link}"; then...

crazy_0000的博客 29

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

FastDFS和fastdfs-nginx-module安装教程

文件要求:libfastcommon-1.0.75、libserverframe-1.2.5、nginx-1.24.0、fastdfs-6.12.2、fastdfs-nginx-module-1.24。先查询插件的解压路径(我的在/usr/local/fastdfs-nginx-module-1.24/src)再说一点我是用的服务器,虚拟机不太清楚,之前用过虚拟机很麻烦,就花30买了改服务器来玩,30一年随便玩。有些依赖上一个文件的,要按顺序安装,不然会报错。通过网盘分享的文件:文件分享。

m0_73143466的博客 828

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

分布式文件系统 — FastDFS_02(FastDFS与nginx整合)

文章目录1 安装FastDFS-nginx-module2 安装nginx3 nginx配置文件4 启动storage服务器的nginx5 tracker storage nginx 启动命令6 问题记录6.1 nginx: [emerg] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory) 欢迎访问笔者个...

文泽路小男孩的博客 368

【那些踩过的坑】搭建FastDFS文件服务器安装nginx问题(新手安装前一定要看!!!)

磕了2天终于把全部问题解决啦!!!撒花儿★,°:.☆( ̄▽ ̄)/$:.°★ ???????????? 引言:新手在安装配置fastdfs、nginx以及fastdfs-nginx-module的时候常常会疏忽很多问题,笔者在刚开始学习fastdfs的过程中也踩过各种各样奇奇怪怪的坑,配合网上的教程虽然有些问题得到解决,但是好多方案很零碎,且绕了好大几圈才终于找到适用方法,现在将我遇到的问题尽可能写下记录,希望能为...

砥砺前行,灿若繁星 1683

安装fastdfs-nginx-module,Nginx启动只有master进程而没有worker进程,访问不了的问题

nginx结合fastdfs后启动无法访问的问题

wjs040的博客 768

用fastdfs-nginx-module整合fastdfs与nginx时,nginx启动没有work线程问题

1.FastDFS的安装 fastdfs的版本我选择的是5.12,最新的6.00版本我在编译的时候报错了。 FastDFS的安装可以参照这篇博客FastDFS 分布式文件系统(部署和运维) 2.FastDFS-nginx-module下载和配置 FastDFS安装完成和测试成功后,需要整合nginx才可以下载文件,FastDFS的github上提供了FastDFS-nginx-module模块用于...

sinat_37729104的博客 4203

FastDFS整合nginx报错[objs/addon/src/ngx_http_fastdfs_module.o] Error 1

场景 在成功安装FastDFS后图片依旧无法访问,需要整合nginx,然后在安装ngx_http_fastdfs_module时执行./configure --prefix=/usr/local/nginx/nginx-1.16.0 --add-module=/usr/local/fastdfs-nginx-module/fastdfs-nginx-module-master/src/(指令后面参数为ng路径和fastdfs-nginx的src路径)后执行make指令时编译报错,报错信息如下 ......

过于丰富,无法简介 6261

Nginx和FastDfs完整配置过程

借鉴(https://blog.youkuaiyun.com/qq_34301871/article/details/80060235) 1、unknown directive "ngx_fastdfs_module" ngix整合fastdfs启动后报错 执行yum groupinstall'Development Tools' 后重新执行 进入fastdfs-nginx-m...

weixin_30362083的博客 143

到底如何安装和配置Nginx并访问FastDFS?

1.FastDFS基本传输过程 FastDFS通过Tracker服务器将文件放在Storage服务器存储,但是同组存储服务器之间需要进入文件复制,有同步延迟的问题。 假设Tracker服务器将文件上传到了192.168.4.125,上传成功后文件ID已经返回给客户端。此时FastDFS存储集群机制会将这个文件同步到同组存储192.168.4.126,在文件还没有复制完成的情况下,客户端如果用这个文件ID在192.168.4.126上取文件,就会出现文件无法访问的错误。fa...

kepengs的博客 456

FastDFS安装教程(单机)

0.安装包 所有的组件都可以从github或者gitee上下载,这是fastdfs开发团队在github的开源项目:https://github.com/happyfish100 注意:每个组件都有个HISTORY文件,在里面可以看各版本兼容 1.libfastcommon:版本1.0.51,fastdfs的基础C函数库 2.fastdfs :版本6.07,fastdfs核心组件 3.fastdfs-nginx-module:版本1.22,fastdfs集成nginx模块 4.nginx:版本1.20

金牛区代码仔的博客 880

linux中安装fastDFS

最近项目中需要用到文件服务,于是就开始了解fastDFS,并在linux中搭建一个单机的文件服务。安装过程中也遇到一些问题,于是记录下来,方便以后查询。 fastDFS是由国人开源的一个分布式文件系统。在[github]以(https://github.com/happyfish100/fastdfs)上可以搜到源码以及相关的下载包。 安装fastDFS需要分别安装fastdfs...

蓝色格子ren的博客 3018
上一篇: FastAPI学习—FastAPI初识及参数传递使用—day03
下一篇: 删除目录下的所有文件和文件夹,不包括某个文件
s_daqing
博客等级 码龄8年 6306粉丝 254原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值