Centos7 搭建Nginx图片服务超详细新手小白教程
简介:以上文章讲述的是【Centos7超详细的安装与部署应用MySQL,Redis】接下来我总结一下【Centos7 搭建Nginx图片服务超详细教程】。觉得我还可以的可以加群一起督促学习探讨技术。QQ群:1076570504 个人学习资料库http://www.aolanghs.com/ 微信公众号搜索【欢少的成长之路】
一、安装FTP组件
1.安装vsftpd组件
yum -y install vsftpd
安装完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp的配置文件。
2.添加ftp用户
useradd ftpuser
此用户就是用来登录ftp服务器用的。
这样一个用户建完,可以用这个登录,记得用普通登录不要用匿名了。登录后默认的路径为 /home/ftpuser.
3.添加ftp密码
passwd ftpuser
输入两次密码后修改密码。
4.配置ftp访问类
vim /etc/vsftpd/vsftpd.conf
service vsftpd restart
重启 FTP 服务
5.设置开机启动
chkconfig vsftpd on
二、安装Nginx
1. 安装Nginx
yum -y install nginx
以上内容网上大批都是,接下来就比较重要的一个步骤点吧!因为博主也是在这里走了不少坑!也希望大家不要吐槽,不就是很简单的东西嘛!其实的确是这个道理!对于会的人来说很简单 十句Linux指令解决服务!对于不会的人来说真的是步步难行!
2.配置Nginx前检查工作
首先可以尝试在xshell中cd进入存放的图片路径打开它,第一次配置话肯定会出现权限问题!
chmod -R 777 /home(这里home是指文件夹,一样的写法)
其次检查默认配置的情况下Nginx可否正常使用打开等
如果重启nginx的时候,个人建议干掉端口号等,弄的干净一些!
fuser -k 80/tcp 类似指令 具体的端口自行根据服务而定
其次既然配置图片肯定是要有访问的,关掉Centos防火墙。这里的防火墙是有两个哦,iptables与firewalld
systemctl status iptables 查看iptables防火墙状态
systemctl status firewalld 查看firewalld防火墙状态
systemctl start iptables #启动iptables
systemctl stop iptables #停止iptables
3.配置Nginx
以上指令是安装,大家无需在意安装路径,只管骚操作就好了!配置文件的时候肯定要知道文件的位置,首先Linux指令寻找服务的位置,数据的位置以及日志的位置。下图举个例子!
whereis nginx(不止是nginx,也可以是mysql,redis,zk等)
知道了路径之后cd指令进入文件或者利用xftp6工具直接进入!
我发现
etc中的nginx存放的是nginx的配置文件conf
usr中的nginx存放的是nginx的默认html文件以及图片等
var中的nginx存放的是nginx的默认log日志文件
第一步返回跟目录
第二步进入etc的nginx目录中
第三步查询nginx目录下的文件列表
第四步vi指令修改conf配置文件
第五步新增一个路径之后:wq指令保存
TIP:这里我遇到的坑是我新增的location路径(可以留意我的配置文件路径以及我文件路径的区别)
配置文件:/home/ftpuser/
真实路径:/home/ftpuser/images/
访问路径:192.168.128.100/images/22.jpg
真正在解析的时候利用location这种配置的话会有一个拼接的写法,还有一种写法网上查我这里不做介绍了。
配置文件中 /home/ftpuser/ 真正的含义是会把上面的location后面的/images拼接在root后面
也就是/home/ftpuser/images(正确路径,当前拼接后的路径就是你的图片存放路径,如果不是肯定会进error日志的)
奉上日志分析,因为没有当前图片所以发生error日志是没有问题的
2021/03/07 14:05:26 [error] 2256#0: *1 open() "/usr/share/nginx/html/favicon.ico" failed (2: No such file or directory), client: 192.168.128.1, server: _, request: "GET /favicon.ico HTTP/1.1", host: "192.168.128.100"
2021/03/07 14:05:26 [error] 2256#0: *1 open() "/usr/share/nginx/html/favicon.ico" failed (2: No such file or directory), client: 192.168.128.1, server: _, request: "GET /favicon.ico HTTP/1.1", host: "192.168.128.100"
2021/03/07 14:05:28 [error] 2256#0: *1 open() "/home/ftpuser/images/223.jpg" failed (2: No such file or directory), client: 192.168.128.1, server: _, request: "GET /images/223.jpg HTTP/1.1", host: "192.168.128.100"
第一条与第二条日志是因为我访问的是192.168.128.100/22.jpg。这里为什么我会这样操作,就是因为在不懂的时候路径出现了问题 IP访问的是默认的文件路径也就是use/share(配置文件里有的),配置了location之后访问的就是配置的路径地址了(images的路径)
三、代码应用
先这样更新一下,随后我会编辑这篇文章,目前我的学习进度也是刚搞定了nginx图片服务,代码应用的话已经封装成dll库了。正在测试稍后发布在微信公众号中!
知道的越多,不知道的就越多。找准方向,坚持自己的定位!加油向前不断前行,终会有柳暗花明的一天!
创作不易,你们的支持就是对我最大认可!
文章将持续更新,我们下期见!QQ群:1076570504 微信公众号搜索【欢少的成长之路】请多多支持!