当前位置: 首页 > news >正文

犀牛云做网站怎么样怎么创建公众号微信

犀牛云做网站怎么样,怎么创建公众号微信,263企业邮箱登录入口手机版,福田蒙派克6座二手值多少钱目录 1. 文件上传下载流程 2. Nginx和fastDFS的整合 3. 数据库表 3.1 数据库操 3.2 数据库建表 1. 文件上传下载流程 fileID 需要是一个哈希来判定。 2. 文件下载流程 3. 优化 优化思路 : 直接让客户端连接 fastDFS 的存储节点 , 实现文件下载 举例 , 访问一个…

目录

1. 文件上传下载流程

2. Nginx和fastDFS的整合

3. 数据库表

 3.1 数据库操

 3.2 数据库建表


1. 文件上传下载流程

        

 fileID 需要是一个哈希来判定。

 2. 文件下载流程

        

3. 优化        

优化思路 :
直接让客户端连接 fastDFS 的存储节点 , 实现文件下载
举例 , 访问一个 url 直接下载 :
http://192.168.247.147/group1/M00/00/00/wKj3k1tMBKuARhwBAAvea_OGt2M471.jpg

1. 客户端发送请求使用的协议 : http
     fastDFS 能不能解析 http 协议
      nginx能解析 http 协议
    在 nginx 中安装 fastDFS 的插件
2. 客户端怎么知道文件就存储在对应的那个存储节点上 ?
  上传的时候将 fileID 和存储节点 IP 地址都进行存储

2. NginxfastDFS的整合

        1. 在存储节点上安装Nginx, 将软件安装包拷贝到fastDFS存储节点对应的主机上

# 1. fastDFS 的存储节点
# 2. 在存储节点对应的主机上安装 Nginx, 安装的时候需要一并将插件装上
# - ( 余庆提供插件的代码 + nginx 的源代码 ) * 交叉编译 = Nginx

       2. 在存储节点对应的主机上安装Nginx, 作为web服务器

- fastdfs-nginx-module_v1.16.tar.gz 解压缩
# 1. 进入 nginx的源码安装目录 /home/lixiaoxiang/packages/nginx-1.10.1
# 2. 检测环境 , 生成 makefile
./configure --add-module = fastdfs 插件的源码目录 /src
make
sudo make install

make过程中的错误

# 1. fatal error: fdfs_define.h: No such file or directory
# 2. fatal error: common_define.h: No such file or directory
default: build
clean:
rm -rf Makefile objs
build:
$(MAKE) -f objs/Makefile
install:
$(MAKE) -f objs/Makefile install
modules:
$(MAKE) -f objs/Makefile modules
upgrade:
/usr/local/nginx/sbin/nginx -t
kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
sleep 1
test -f /usr/local/nginx/logs/nginx.pid.oldbin
kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
# 解决方案 - 修改 objs/Makefile
ALL_INCS = -I src/core \
-I src/event \
-I src/event/modules \
-I src/os/unix \
-I /usr/local/include/fastdfs \
-I /usr/local/include/fastcommon/ \
-I objs \
-I src/http \
-I src/http/modules\
-I /usr/include/fastdfs/

 3. 安装成功, 启动Nginx, 发现没有 worker进程

        

lixiaoxiang@ubuntu:/usr/local/nginx/sbin $ ps aux|grep nginx
root 65111 0 .0 0 .0 39200 696 ?Ss 10 :32 0 :00 nginx: master process
./nginx
robin 65114 0 .0 0 .0 16272 928 pts/9 S + 10 :32 0 :00 grep --color = auto
nginx

nginxlogs日志

        

# ERROR - file: shared_func.c, line: 968, file /etc/fdfs/mod_fastdfs.conf not exist
# 从哪儿找 -> fastDFS 插件目录中找
robin@OS:~/package/nginx/fastdfs-nginx-module/src $ tree
.
├── common.c
├── common.h
├── config
├── mod_fastdfs.conf -> cp /etc/fdfs
└── ngx_http_fastdfs_module.c
0 directories, 5 files

需要修改mod_fdfs.conf (etc/fdfs)文件, 参数当前存储节点的storage.conf进行修改  

# 存储 log 日志的目录
base_path=/home/robin/fastdfs/storage
# 连接 tracker 地址信息
tracker_server = 192 .168.91.130:22122
# 存储节点绑定的端口
storage_server_port = 23000
# 当前存储节点所属的组
group_name = group1
# 客户端下载文件的时候 , 这个下载的 url 中是不是包含组的名字
// 上传的 fileID: group1/M00/00/00/wKj3h1vJRPeAA9KEAAAIZMjR0rI076.cpp
// 完整的 url: http://192.168.1.100/group1/M00/00/00/wKj3h1vJRPeAA9KEAAAIZMjR0rI076.cpp
url_have_group_name = true
# 存储节点上存储路径的个数
store_path_count = 1
# 存储路径的详细信息
store_path0=/home/robin/fastdfs/storage

4. 重写启动 Nginx, 还是没有 worker 进程 , 查看 log 日志
# ERROR - file: ini_file_reader.c, line: 631, include file "http.conf" not exists,
line: "#include http.conf"
/etc/fdfs 下找的时候不存在
- fastDFS 源码安装目录找 /conf
        - sudo cp http.conf /etc/fdfs
#lixiaoxiang@ubuntu:~/packages/fastdfs-5.10/conf$ sudo cp http.conf /etc/fdfs/
 
# ERROR - file: shared_func.c, line: 968, file /etc/fdfs/mime.types not exist
- nginx 的源码安装包中找 /conf
        - sudo cp mime.types /etc/fdfs
#lixiaoxiang@ubuntu:~/packages/nginx-1.10.1/conf$ sudo cp mime.types /etc/fdfs/
        

 5. 通过浏览器请求服务器下载文件: 404 Not Found

http://192.168.1.100/group1/M00/00/00/wKj3h1vJRPeAA9KEAAAIZMjR0rI076.jpg
# 错误信息
open() "/usr/local/nginx/zyFile2/group1/M00/00/00/wKj3h1vJSOqAM6RHAAvqH_kipG8229.jpg"
failed (2: No such file or directory), client: 192.168.247.1, server: localhost,
request: "GET /group1/M00/00/00/wKj3h1vJSOqAM6RHAAvqH_kipG8229.jpg HTTP/1.1", host:
"192.168.247.135"
服务器在查找资源时候 , 找的位置不对 , 需要给服务器指定一个正确的位置 , 如何指定 ?
- 资源在哪 ? ====>  在存储节点的存储目录中 store_path0
- 如何告诉服务器资源在这 ? =====> 在服务器端添加 location 处理
locatioin /group1/M00/00/00/wKj3h1vJSOqAM6RHAAvqH_kipG8229.jpg
location /group1/M00/00/00/
location /group1/M00/
location /group1/M00/
{
        # 告诉服务器资源的位置
        root /home/robin/fastdfs/storage/data;
#关键字
        ngx_fastdfs_module;
}

项目遇到的问题:

        一直无法加载到图片,最后发现mod_fdfs.conf 里面store_path0=/home/robin/fastdfs/storage 路径协程了 fastfds 错误,导致加载不出来。花了一个小时,最后想起来看日志信息。发现里面的路径不对,修改了 了路径就可以了

3. 数据库表

        3.1 数据库操

        1. 创建一个名称为cloud_disk的数据库

                CREATE DATABASE cloud_disk;

        2. 删除数据库 cloud_disk
         drop database cloud_disk;
        3. 使用数据库 cloud_disk
         use cloud_disk;

 3.2 数据库建表

        1. 用户信息表 -- user

        

CREATE TABLE user (
id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT ,
name VARCHAR ( 128 ) NOT NULL ,
nickname VARCHAR ( 128 ) NOT NULL ,
password VARCHAR ( 128 ) NOT NULL ,
phone VARCHAR ( 15 ) NOT NULL ,
createtime VARCHAR ( 128 ),
email VARCHAR ( 100 ),
CONSTRAINT uq_nickname UNIQUE (nickname),
CONSTRAINT uq_name UNIQUE (NAME)
);

 2. 文件信息表 - user_file_list

CREATE TABLE user_file_list (
user VARCHAR ( 128 ) NOT NULL ,
md5 VARCHAR ( 200 ) NOT NULL ,
createtime VARCHAR ( 128 ),
filename VARCHAR ( 128 ),
shared_status INT ,
pv INT
);
        3. 用户文件列表 - user_file_list
        

CREATE TABLE user_file_list (
user VARCHAR ( 128 ) NOT NULL ,
md5 VARCHAR ( 200 ) NOT NULL ,
createtime VARCHAR ( 128 ),
filename VARCHAR ( 128 ),
shared_status INT ,
pv INT
);
4. 用户文件数量表 - user_file_count

CREATE TABLE user_file_count (
user VARCHAR ( 128 ) NOT NULL PRIMARY KEY ,
count INT
);

 5. 共享文件列表 - share_file_list

        

CREATE TABLE share_file_list (
user VARCHAR ( 128 ) NOT NULL ,
md5 VARCHAR ( 200 ) NOT NULL ,
createtime VARCHAR ( 128 ),
filename VARCHAR ( 128 ),
pv INT
);

 

1. fastCGI
1. 是什么 ?
        运行在服务器端的代码, 帮助服务器处理客户端提交的动态请求
2. 干什么
        帮助服务器处理客户端提交的动态请求
3. 怎么用 ?
        nginx如何转发数据
# 分析出客户端请求对应的指令 -- /test
location / test
{
# 转发出去
fastcgi_pass 地址 : 端口 ;
include fastcgi.conf;
}

 fastcgi如何接收数据

# 启动 , 通过 spawn-fcgi 启动
spawn-fcgi -a IP -p port -f ./fcgi
# 编写 fastCGI 程序的时候
- 接收数据 : 调用读终端的函数就是接收数据
- 发送数据 : 调用写终端的函数就是发送数据
fastcgi 如何处理数据
// 编写登录的 fastCgI 程序
int main ()
{
        while ( FCGI_Accept () >= 0 )
        {
        // 1. 接收登录信息 -> 环境变量中
        // post -> 读数据块的长度 CONTENT-LENGTH
        // get -> 从请求行的第二部分读 QUEERY_STRING
        // 2. 处理数据
        // 3. 回发结果 -> 格式假设是 json
        printf ( "Content-type: application/json" );
        printf ( "{\"status\":\"OK\"}" )
        }
}
http://www.yayakq.cn/news/499377/

相关文章:

  • 长春电商网站建设多少钱常宁网站制作
  • 微信网站背景图片学校网站如何建设
  • 国建设网站百度找不到我的网站了
  • 网站设计服务商行业门户网站运营
  • 一般网站建设需要哪些东西做招工的网站排名
  • 先做网站还是先做天猫南山网站设计方案
  • 四川省化工建设有限公司网站广告策划宣传公司
  • pos机WordPress主题免插件优化wordpress
  • 二手交易网站建设网站建设利润越来越低
  • 长沙做旅游网站多少钱wordpress添加数据库文件
  • 在越南做网站都是什么人免费网站服务器
  • 网站排名如何做玉林网站seo
  • 站长工具seo查询软件好看的商城网站
  • 搞笑网站全站源码销售类网站开发架构
  • 做网站有用没网络营销方式举个例子
  • 慈溪哪点有学做网站的怎么做自己网站里的资讯
  • 电子商务网站的类型北京电子商务网站制作
  • 北京顺义网站建设百度企业邮箱注册申请
  • 东莞网站制作十强策划营销
  • 网站建设用户需求分析怎么做外贸网站seo
  • 哪个网站可以做平面兼职专业建站公司哪家有名
  • 小说网站怎么建设少儿编程网课国内哪个好
  • 移动营销型网站建设wordpress扁平模板下载
  • 建设好网站如何上传百度WordPress多级目录多种样式
  • 龙岗建设招标局网站购物网站的搜索框用代码怎么做
  • 永久免费网站系统年度关键词
  • 深圳建网站三千新蔡县住房和城乡建设局网站
  • 河南卓越建设工程有限公司网站网站不备案可以建设吗
  • 网站焦点图制作教程上海猎头公司排名
  • 泰安网站建设定制公司网站开发7个基本流程图