记得以前在自己的ubuntu上安装过Nginx,由于那是一台台式机,所以现在又重新在自己笔记本上的虚拟机上安装了Nginx,安装的这个过程有点不太顺利,以前没有做笔记,这一次安装起来花费了很多不必要的时间,这一次我想自己的安装过程以及遇到的过程全部记录下来,给安装的朋友们一个参考。
我的环境:vm7.5 下 redhat5
下载nginx安装包 (http://wiki.nginx.org/Install)
我是从官网上下载源文件,上传到redhat后,我按照参考手册如下安装:
- ./configure //这一步报错了,大概是说我缺少其他包
- make && make install
后来谷歌了,原来在编译Nginx源码之前要安装 openssl,zlib,pcre 这三个包。
分别安装了这三个包后继续编译nginx源码:
- /configure --user=root --group=root --prefix=/usr/local/nginx/ --with-http_stub_status_module --with-openssl=/usr/local/openssl
- make && make install
这样就可以安装完成了,但是之后启动nginx又报错了,错误如下:
- /usr/local/webserver/nginx/sbin/nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
原来是找不到libpcre.so.1 文件,接着用 ldd $(which =/usr/local/nginx/sbin/nginx) 查看了一下:
- 1linux-gate.so.1 => (0x00312000)
- 2 libpthread.so.0 => /lib/libpthread.so.0 (0x00430000)
- 3 libcrypt.so.1 => /lib/libcrypt.so.1 (0x065c4000)
- 4 l<span style="color:#e53333;">i</span><span style="color:#e53333;"><span style="color:#e53333;">bpcre.so.1 => not found</span> </span> libc.so.6 => /lib/libc.so.6 (0x00110000)
- 5 /lib/ld-linux.so.2 (0x00284000)
进入 /usr/lib 查找了一下 libpcre 相关的文件,有如下:
- 1 [root@bogon lib]# ls | grep libpcre
- 2 libpcrecpp.so.0
- 3 libpcrecpp.so.0.0.0
- 4 libpcreposix.so.0
- 5 libpcreposix.so.0.0.0
我尝试着将libpcre.so.1做了一个软链接至libpcrecpp.so.0 之后又运行 nginx,终于没有报错了,打开浏览器输入http://localhost/看到了初始默认页面!