|
|
51CTO旗下网站
|
|
移动端

超全面Nginx+VSFTP搭建图片服务器

现在的项目基本上都是nginx/Apache+tomcat/jetty,如果图片存储到对应的应用服务器的机器上,下次访问图片时负载到另外一台应用服务器的机器上也就访问不到了,所以我们需要图片服务器用来专门存储图片信息。

作者:RedAnts来源:程序员之路|2018-10-29 09:39

 为啥需要图片服务器?

现在的项目基本上都是nginx/Apache+tomcat/jetty,如果图片存储到对应的应用服务器的机器上,下次访问图片时负载到另外一台应用服务器的机器上也就访问不到了,所以我们需要图片服务器用来专门存储图片信息。

图片量较小就使用nginx+VSFTP单节点图片服务器就可有了,如果量很大我们就需要考虑使用FastDFS分布式文件系统。

这里咱只讨论nginx+VSFTP单节点图片服务器。

Nginx简介:

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

VSFTP简介:

VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。

安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。

在速度方面,使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。

在稳定方面,VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据Red Hat的Ftp服务器的数据,VSFTP服务器可以支持15000个并发用户

一下命令是在CentOS7.4 64位操作系统环境操作的。

Nginx安装:

  1. 依赖环境安装 
  2. yum install gcc 
  3. yum install pcre-devel 
  4. yum install zlib zlib-devel 
  5. yum install openssl openssl-devel 
  6. //一键安装上面四个依赖 
  7. yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel 
  8.   
  9. 开启防火墙端口: 
  10. Centos7默认防火墙是firewalld,一下是相关命令 
  11. # service firewalld status; #查看防火墙状态 
  12. # service firewalld start;  或者 #systemctl start firewalld.service;#开启防火墙 
  13. # service firewalld stop;  或者 #systemctl stop firewalld.service;#关闭防火墙 
  14. # service firewalld restart;  或者 #systemctl restart firewalld.service;  #重启防火墙 
  15. # systemctl disable firewalld.service#禁止防火墙开启自启 
  16. # systemctl enable firewalld#设置防火墙开机启动 
  17. # yum remove firewalld#卸载firewall 
  18. # firewall-cmd --query-port=80/tcp  #查询端口号80 是否开启 
  19.   
  20. 先把nginx和vsftp相关端口开启,分别执行一下5条指令即可。 
  21. firewall-cmd --zone=public --add-port=80/tcp --permanent 
  22. firewall-cmd --zone=public --add-port=443/tcp --permanent 
  23. firewall-cmd --zone=public --add-port=22/tcp --permanent 
  24. firewall-cmd --zone=public --add-port=21/tcp --permanent 
  25. firewall-cmd --zone=public --add-port=30000-30999/tcp --permanent 
  26.   
  27.   
  28. 下载Nginx的tar并解压 
  29. //创建一个文件夹 
  30. cd /usr/local 
  31. mkdir nginx 
  32. cd nginx 
  33. wget http://nginx.org/download/nginx-1.10.1.tar.gz  //下载tar包 
  34. tar -xvf nginx-1.13.7.tar.g   //解压 
  35.   
  36. 安装Nginx 
  37. 进入nginx-1.10.1 
  38. cd /usr/local/nginx/nginx-1.10.1 
  39. 执行命令 
  40. ./configure --prefix=/usr/local/nginx 
  41. 执行命令make和makeinstall 
  42. make && make install 
  43. 进入sbin目录 
  44. cd /usr/local/nginx/sbin 
  45. 可以执行以下命令 
  46. ./nginx    启动服务器 
  47. ./nginx -s stop  停止服务器 
  48. ./nginx -s reload  重启服务器 
  49. ps -ef | grep nginx       查看进程命令 
  50. kill -HUP Nginx主进程号     平滑重启 
  51. 注: 

配置nginx自启,参考地址:https://www.cnblogs.com/piscesLoveCc/p/5867900.html

VSFTP安装:

  1. 安装 
  2. yum -y install vsftpd 
  3. 添加ftp用户: 
  4. useradd ftpuser 
  5. 给ftp用户添加密码: 
  6. passwd ftpuser 
  7. 输入两次密码后修改密码。 
  8. fuchenggang 123qwe 
  9.   
  10. selinux默认是关闭的,我就没有启动,偷懒了。嘿嘿 
  11.   
  12. 修改配置vsftpd.conf 
  13. vim /etc/vsftpd/vsftpd.conf 
  14. 关闭匿名方法配置端口 
  15. Anonymous_enable=NO 
  16. pasv_min_port=30000 
  17. pasv_max_port=30999 
  18.   
  19. 查看vsftpd状态 
  20. systemctl status vsftpd.service 
  21. 启动vsftpd 
  22. systemctl start vsftpd.service 
  23. 设置开启自启方式,参考地址:http://blog.sina.com.cn/s/blog_4b93170a0100mdou.html 
  24.   
  25. 本人使用Xftp客户端测试OK! 
  26.   

详细安装配置,建议参考下面地址:https://blog.csdn.net/Hello_World_QWP/article/details/78184435

设置Nginx为图片服务器

vim /user/local/nginx/conf/nginx.conf

配置如下:

charset 设置编码

location设置静态资源访问地址

root 设置图片存放地址

autoindex on; 设置图片浏览器预览功能

expires 1d; 设置图片缓存有效时间1天

Xftp和浏览器访问效果:

【编辑推荐】

  1. 为什么微软、AWS都选择无服务器架构?3分钟读懂其优势和用例
  2. 重新思考使用无服务器构建软件的方式
  3. 如何搭建Nginx服务器做到负载均衡?
  4. 详解Nginx主要应用场景/反向代理/负载均衡/动静分离/HTTP服务器
  5. Apache和Nginx两大Web常用服务器有什么区别,你知道吗?
【责任编辑:武晓燕 TEL:(010)68476606】


点赞 0
分享:
大家都在看
猜你喜欢
24H热文
一周话题
本月最赞

读 书 +更多

网管员必读—服务器与数据存储

《网管员必读—服务器与数据存储》全面、系统地介绍了在中、高级网络管理和网络工程实施中两个重要方面的主流技术和应用:硬件服务器和数据...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊