网络云盘项目:04---Nginx配置(配置Nginx访问FastCGI、FastDFS)

  • 本项目分为6篇博客文章完成:
    • 1.项目总体介绍:https://blog.csdn.net/qq_41453285/article/details/107871393
    • 2.Redis部署、MySQL部署、MySQL表设计:https://blog.csdn.net/qq_41453285/article/details/107871620
    • 3.FastDFS部署:https://blog.csdn.net/qq_41453285/article/details/107874068
    • 4.Nginx配置:本文介绍的
    • 5.服务端/客户端部署、演示运行效果:https://blog.csdn.net/qq_41453285/article/details/107891262
    • 6.HTTP接口介绍、功能介绍、服务端/客户端代码解析:https://blog.csdn.net/qq_41453285/article/details/107893049

一、本文目的

  • 因为我们的Nginx需要将Qt客户端的请求转发给后台的FastCGI进行处理,因此需要配置Nginx使其可以访问FastCGI程序
  • 另外,我们的FastCGI会调用FastDFS的C API来操作FastDFS

二、Nginx的安装

  • Nginx的安装就不详细介绍了,请参阅:https://blog.csdn.net/qq_41453285/article/details/106289169

三、FastDFS配置

向Nginx中编译fastdfds-nginx-module模块

  • fastdfds-nginx-module模块是可以通过Nginx访问FastDFS的
  • fastdfds-nginx-module模块下载下来之后,需要重新编译Nginx,将这个模块编译进Nginx
  • 模块的安装就不详细介绍了,请参阅:https://blog.csdn.net/qq_41453285/article/details/107167747

FastDFS集群搭建

  • 后端需要使用到FastDFS,因此需要搭建一个集群
  • 集群就是使用前一篇文章中的,请参阅:https://blog.csdn.net/qq_41453285/article/details/107874068

添加FastDFS相关的配置文件

  • FastDFS集群和Nginx都安装好之后现在还不能正常使用Nginx,还需要修改一些配置文件
  • 将fastdfds-nginx-module模块源码包中的src目录下的mod_fastdfs.conf文件拷贝一份到/etc/fdfs目录下
sudo cp ~/build/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

ls /etc/fdfs/

  • 修改/etc/fdfs/mod_fastdfs.conf配置文件,修改的内容如下:
    • base_path:此storage服务节点数据和日志存储路径(填写我们那个FastDFS集群中storage节点的地址)
    • tracker_server:此storage服务节点工作在哪个tracker_server服务节点下(如果有多个,那么可以写多个,每一个占一行)
    • storage_server_port:此storage服务节的监听端口
    • url_have_group_name:设置为true,表示URL中可以包含组的名字(例如浏览器通过带有组名的URL去访问Nginx就需要设置这一项)
    • store_path0:此storage服务节存储文件数据的路径
    • group_count:设置组的个数,此处我们有1个组,并设置相关的参数
sudo vim /etc/fdfs/mod_fastdfs.conf

网络云盘项目:04---Nginx配置(配置Nginx访问FastCGI、FastDFS)_第1张图片

网络云盘项目:04---Nginx配置(配置Nginx访问FastCGI、FastDFS)_第2张图片

网络云盘项目:04---Nginx配置(配置Nginx访问FastCGI、FastDFS)_第3张图片

  • 将fastdfs源码目录conf/目录下的http.conf、mime.types也复制到/etc/fdfs/目录下
sudo cp ~/build/fastdfs/conf/http.conf /etc/fdfs/

sudo cp ~/build/fastdfs/conf/mime.types /etc/fdfs/

ls /etc/fdfs/

  • 备注:如果不复制“http.conf、mime.types”,直接去启动Nginx,那么会出现Nginx会报下面的错误(在/usr/local/nginx/logs/error.log中查看),从而导致Nginx的worker进程会启动失败,导致也无法提供Web服务,原因是/etc/fdfs/下缺少 http.conf 和 mime.types文件

修改Nginx配置文件

  • 将/usr/local/nginx/conf/目录下的nginx.conf(这个是Nginx的默认配置文件)拷贝一份为nginx.conf.default,然后修改nginx.conf
sudo cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.default

sudo vim /usr/local/nginx/conf/nginx.conf

ls /usr/local/nginx/conf/

  • 添加如下的内容如下:

网络云盘项目:04---Nginx配置(配置Nginx访问FastCGI、FastDFS)_第4张图片

四、FastCGI配置

  • 我们的Nginx会将接收到的请求转发给后台FastCGI进行处理,因此还需要一系列的配置

ngx_http_fastcgi_module模块的安装

  • Nginx有一个fast_cgi模块(ngx_http_fastcgi_module模块),其能与任何兼容FastCGI协议的服务器通信,该模块通过 fastcgi 协议将指定的客户端请求转发至 spawn-fcgi 处理
  • 安装就不详细介绍了,请参阅:https://blog.csdn.net/qq_41453285/article/details/106321820

cgi开发库的安装

  • 我们的服务端会调用C API访问FastCGI程序,因此需要安装cgi开发库
  • 安装就不详细介绍了,请参阅:https://blog.csdn.net/qq_41453285/article/details/106321820

spawn-fcgi进程管理器的安装

  • FastCGI程序需要使用spawn-fcgi来运行,因此还需要安装这个工具
  • 安装就不详细介绍了,请参阅:https://blog.csdn.net/qq_41453285/article/details/106321820

修改Nginx配置文件

  • 修改/usr/local/nginx/conf/目录下的nginx.conf,内容如下:
sudo vim /usr/local/nginx/conf/nginx.conf

网络云盘项目:04---Nginx配置(配置Nginx访问FastCGI、FastDFS)_第5张图片

你可能感兴趣的:(项目专栏)