什么是Nginx?什么?没听过?那Apache tomcat应该听过吧,Nginx同Apache一样都是一种WEB服务器。基于REST架构风格,以统一资源描述符(Uniform Resources Identifier)URI或者统一资源定位符(Uniform Resources Locator)URL作为沟通依据,通过HTTP协议提供各种网络服务。
Apache被设计为一个重量级的,不支持高并发的服务器。
Nginx则是轻量级高并发的服务器。所以现在被应用的很广。
但是今天我就不讲Nginx那些很牛逼的东西了,不是我不想讲,是因为我不会,以后学习了后会给个链接补充,那么今天我要ji讲的的在Linux环境下搭建Nginx图片服务器。
1.首先你得有Nginx:
送你个链接:http://nginx.org/en/download.html 红色框框里的。
2.安装一下依赖环境(一般最新的linux都自带,你好歹意思一下,执行一下没关系的)
安装gcc的环境:
$ yum install gcc-c++
安装第三方开发包:
$ yum install -y pcre pcre-devel
$ yum install -y zlib zlib-devel
$ yum install -y openssl openssl-devel
3.开始安装啦
SecureCRTPortable(远程连接服务器输入命令的,这个输入rz命令也可以上传文件)和WinSCP(远程连接服务器查看文件的),就下面两个东西,必备的,不要和我说不认识这两个东西
a. 将上面下载的 nginx-1.15.5.tar.gz 上传到linux文件夹 /usr/local/software 下,没有这个文件夹就新建
b.解压:
$ cd /usr/local/software #进入目标文件夹
$ tar zxf nginx-1.15.5.tar.gz #解压
c.进入刚才解压的文件夹里,执行下面configure命令
$ cd nginx-1.15.5/
$ ./configure --prefix=/usr/local/nginx --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_gzip_static_module --http-client-body-temp-path=/var/temp/nginx/client --http-proxy-temp-path=/var/temp/nginx/proxy --http-fastcgi-temp-path=/var/temp/nginx/fastcgi --http-uwsgi-temp-path=/var/temp/nginx/uwsgi --http-scgi-temp-path=/var/temp/nginx/scgi
然后会看见
执行一下 ls 查看当前目录,会看到下面的东西,有个红框框里面的东西
来,继续执行下面两行命令(先执行上面的,等完成后再执行下面的)
$ make
$ make install
可能make install执行后会报错,这里我出现过一次,当时不知道什么原因,也没有截图,后来才知道原来是缺少那几个文件夹,错误信息会展示出来是哪几个文件夹,所以只需要照着新建这些文件夹就可以了
来,继续,进入 /usr/local/nginx 文件夹里,然后 ls 一下,看看里面有什么,下面是命令
$ cd /usr/local/nginx
$ ls
d.启动nginx服务器
进入 /usr/local/nginx/sbin 目录下
$ cd /usr/local/nginx/sbin
执行 ./nginx
$ ./nginx
$ ps aux|grep nginx #查看所有a用户u终端x,nginx过滤
看下面,大红框框里的上面两个必须都在,不然就是启动失败
然后远程在电脑上访问linux的ip,因为默认端口为80,所以只需要输入ip访问就可以了,会出现下面的东西就是0k了(如果出现不了可能是防火墙的问题,自己排查)
上面只是启动了nginx服务器,还没有到今天的重点,配置图片存放和访问路径
进入/usr/local/nginx/conf/nginx.conf里面的文件里,进行修改,添加一个location并指定实际路径
$ vi /usr/local/nginx/conf/nginx.conf
红色框框里就是添加的东西
location /images/ {
root /usr/DirFile/;
autoindex on;
}
说明:
1)root则是将images映射到/usr/DirFile/images/
2)autoindex on便是打开浏览功能。
重新进入之前启动nginx的文件夹
$ cd /usr/local/nginx/sbin
执行 ./nginx -s reload 重新启动
$ ./nginx -s reload
修改那个图片文件夹的用户访问权限
$ chown root /usr/DirFile
$ chmod 777 -R /usr/DirFile
然后通过最上面提到的工具将一张图片上传到 /usr/DirFile/images 文件夹里
来通过浏览器访问:http://192.168.8.115/images/1.jpg (要是访问不到就改下文件夹名称,比如大小写,拼写错误等等,多试几次)
完美,讲解完毕