在CentOS7中安装nginx1.9+nginx-gridfs
作者:挚爱—fruit | 来源:互联网 | 2023-05-19 11:13
在CentOS7中安装nginx1.9+nginx-gridfs同学们好,老司机又来了!今天我
在CentOS7中安装nginx1.9 + nginx-gridfs
同学们好,老司机又来了! 今天我安装了下 nginx-gridfs ,nginx-gridfs作为nginx的一个模块,其作用就不谈了,主要是连接mongoDB的Gridfs
访问其中存储的文件,我的环境是CentOS7,以前安装了nginx1.9,想加装一下nginx-gridfs模块(我安装的版本是version 0.8),但是nginx不能动态加载第三方模块,需要重新编译才行
那么问题来了,下面我将自己摸索到的安装步骤共享出来(注意,这是我亲测的可以用的安装方法,不要拿其他那些复制链贴的来和我比较)
1、安装编译时依赖的包 yum install cmake
yum install make
yum install gcc
yum install gcc-c++
yum install ncurses
yum install ncurses-devel
yum install perl-Data-Dumper
yum install libicu-devel
yum install libquadmath-devel
yum install python-devel
yum install bzip2-devel
yum install bison
yum install gcc-c++
yum install pcre
yum install pcre-devel
yum install zlib
yum install zlib-devel
yum install openssl
yum install openssl--devel
2、创建nginx组nginx用户(请创建系统级的用户)
groupadd -r nginx
useradd nginx nginx
3、在你自己管理app的文件夹下面创建一个nginx的目录,方便以后管理nginx,以及nginx的第三方模块
并下载nginx1.9,下载完成后解压
(我是在/usr下面创建的,目录没什么关系,只要在编译的时候设置好路径就可以了)
cd /usr
mkdir nginx && cd nginx
wget http://nginx.org/download/nginx-1.9.6.tar.gz
tar -zfx nginx-1.9.6.tar.gz
4、下载nginx-gridfs,这是一个第三方模块,github上面有的是一个开源项目,请到正规的github上面下载(我指定的)
https://github.com/mdirolf/nginx-gridfs,我安装nginx-gridfs也是参考上面的说明的
cd /usr/nginx
git clone https://github.com/mdirolf/nginx-gridfs.git
cd nginx-gridfs
git checkout v0.8
git submodule init
git submodule update
5、好了,准备工作完成了下面就该是编译nginx的时候了,设置预编译参数
创建编译参数所需的文件夹
cd /var/tmp
mkdir nginx && cd nginx
mkdir client_body
mkdir proxy
mkdir fastcgi
mkdir uwsgi
mkdir scgi
进入nginx目录设置预编译参数
cd /usr/nginx/nginx-1.9.6
./configure \
--prefix=/usr/nginx/nginx-1.9.6 \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/usr/nginx/nginx-1.9.6/logs/error.log \
--http-log-path=/usr/nginx/nginx-1.9.6/logs/access.log \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_xslt_module \
--with-http_stub_status_module \
--with-http_sub_module \
--with-http_random_index_module \
--with-http_degradation_module \
--with-http_secure_link_module \
--with-http_gzip_static_module \
--with-http_perl_module \
--with-debug \
--with-file-aio \
--with-mail \
--with-mail_ssl_module \
--http-client-body-temp-path=/var/tmp/nginx/client_body \
--http-proxy-temp-path=/var/tmp/nginx/proxy \
--http-fastcgi-temp-path=/var/tmp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
--http-scgi-temp-path=/var/tmp/nginx/scgi \
--with-stream \
--with-ld-opt=-Wl,-E \
--add-module=/usr/nginx/nginx-gridfs \
(这些参数是干什么的我就不解释了,大家可以自己去百度下,或者看得懂英文的直接去官网看,官网的说明才是最正确的)
--add-module=/usr/nginx/nginx-gridfs ##这个是设置nginx-gridfs的路径
--sbin-path=/usr/sbin/nginx ##这个设置编译之后nginx命令放在哪
--conf-path=/etc/nginx/nginx.conf ##这个设置配置文件路径
大家如果以后忘了这些参数,可以执行 nginx -V 查看
6、编译之前先对上一步生成的Makefile进行修改(不然编译的时候有可能会报错)
cd /usr/nginx/nginx-1.9.6/objs
vim Makefile
删除前面几行的 -Werror
cd /usr/nginx/nginx-1.9.6
make
make install
7、配置nginx-gridfs 模块
location /uploade/{
gridfs test
field=_id
type=objectid;
mongo 127.0.0.1:27017;
}
gridfs test ##mongodb的数据库名
field=_id ##访问方式 有两种_id 和 filename
type=objectid; 关键字的类型 objectid、string、int
mongo 127.0.0.1:27017; mongo的IP:port
至于更详细的配置请自行百度
8、接下去启动nginx
cd /usr/sbin
nginx
关闭nginx 我是通过kill -9 来执行的,懒得写脚本了
推荐阅读
-
本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ...
[详细]
蜡笔小新 2023-12-14 17:03:58
-
本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ...
[详细]
蜡笔小新 2023-12-13 18:29:11
-
-
本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ...
[详细]
蜡笔小新 2023-12-12 13:54:31
-
本文深入分析了Hibernate延迟加载的机制,特别是集合属性的延迟加载策略。通过延迟加载,可以降低系统的内存开销,提高Hibernate的运行性能。对于集合属性,推荐使用延迟加载策略,即在系统需要使用集合属性时才从数据库装载关联的数据,避免一次加载所有集合属性导致性能下降。 ...
[详细]
蜡笔小新 2023-12-10 14:26:13
-
tcpdump 4.5.1 crash 深入分析 ...
[详细]
蜡笔小新 2023-12-09 07:11:34
-
本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ...
[详细]
蜡笔小新 2023-12-14 18:24:10
-
本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ...
[详细]
蜡笔小新 2023-12-14 14:44:00
-
本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ...
[详细]
蜡笔小新 2023-12-13 10:39:24
-
本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ...
[详细]
蜡笔小新 2023-12-12 17:12:51
-
本文讨论了如何使用Web.Config进行自定义配置节的配置转换。作者提到,他将msbuild设置为详细模式,但转换却忽略了带有替换转换的自定义部分的存在。 ...
[详细]
蜡笔小新 2023-12-11 17:54:55
-
本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ...
[详细]
蜡笔小新 2023-12-11 14:24:00
-
本文介绍了在CentOS7.8下编译muduo库时出现找不到Boost库报错的问题,并提供了解决方法。文章详细介绍了从Github上下载muduo和muduo-tutorial源代码的步骤,并指导如何编译muduo库。最后,作者提供了陈硕老师的Github链接和muduo库的简介。 ...
[详细]
蜡笔小新 2023-12-10 11:40:58
-
蜡笔小新 2023-10-18 00:03:19
-
nginx反向代理、动静分离、负载均衡及rewrite隐藏路径详解 ...
[详细]
蜡笔小新 2023-10-17 21:34:48
-
centos6.8 下nginx1.10 安装 ...
[详细]
蜡笔小新 2023-10-17 17:21:05
-