free website counter

Ubuntu14.04下安装Nginx

  aws上面开的Instance为Ubuntu 14.04,下面记录在ubuntu 14.04上搭建一个Nginx服务器,通过浏览器localhost可以访问的过程

1.1 PCRE依赖库安装

  nginx rewrite依赖PCRE包,需要先编译安装PCRE库,一个perl语言的兼容正则表达式第三方库。可以通过ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/下载pcre-8.35.tar.gz, 然后安装,pcre安装之后的动态库文件位于/usr/local/lib中。

./configure
make
sudo make install


1.2 Nginx源码安装

  从http://nginx.org/download/下载nginx-1.8.0.tar.gz,然后通过make方式安装,若未安装pcre依赖库,会报错,可以通过先安装pcre库或者禁用rewrite功能解决,推荐前者。安装成功后,Nginx的目录为/usr/local/nginx.Nginx主要的配置文件为conf下的nginx.conf,启动文件为sbin下的nginx。

  启动nginx并访问localhost验证安装成功,结果报错如下:./nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: Error 40。通过ldd $(which /usr/local/nginx/sbin/nginx)查看该可执行文件依赖的库文件,可以发现,其他的动态库文件so都在lib下找到,而libpcre.so.1未找到,事实上该动态库在第一步安装了PCRE依赖库之后,存在于/usr/local/lib中,通过ln -s /usr/local/lib/libpcre.so.1 /lib建立软链接,即可正常启动Nginx


1.3 Nginx的启动、停止、重启

  • 启动,直接./运行sbin/nginx即可
  • 重启,sudo ./nginx -s reload
  • 停止,通过ps -ef | grep nginx查询nginx的主进程号可以发现一共有两个进程,一个master,一个worker(由于配置文件中设置的process为1,因此一个worker).通过sudo kill -QUIT pid即可停止Nginx.`当在nginx.conf中配置process的个数之后,相应的worker数目会增多,而master为1个不会有变化。
  • 改变配置之后,通过./nginx -t测试一下配置是否有问题,没有问题再./nginx -s reload重启服务器。
  • 将nginx.conf中server_name改成nginx部署机器所在ip,既可以实现外网访问
Published 28 April 2015
分享按钮