1、Linux Nginx 安装linux nginx安装一下载:PCRE下载 (PCRE正则表达式库官方网址)nginx下载 官网:http:/nginx.org 下载页面:http:/nginx.org/en/download.html tar zxvf pcre-8.32.tar.gz,解压目录为:pcre-8.32 然后进入到 cd pcre-8.32,进行配置、编译、安装 配置 ./configure或./config 配置的时候会出现问题,比如prce-xxx ./configure 如果运行出错:You need a C+ compiler for C+ support 则需要安装C
2、+编译环境yum install -y gcc gcc-c+ 是搜索安装包,可是运行报一样的问题:找不到包,这样的话需要下载安装包才行.其实安装包在默认的系统安装文件里面都是有的,所以我用虚拟光驱打开iso安装文件,发现在Packages包下面就是所有的rpm安装包文件,我把列出来的文件放到need文件下.在后面Nginx配置的时候也会提示一些包找不到,我把对应的文件放在need/need2目录下了.linux下iso镜像文件使用安装gcc的方法:一次安装:rpm -ivh glibc-common-2.12-1.7.el6.i686.rpmrpm -ivh kernel-headers-2.
3、6.32-71.el6.i686.rpmrpm -ivh libgcc-4.4.4-13.el6.i686.rpmrpm -ivh glibc-2.12-1.7.el6.i686.rpm rpm -ivh mpfr-2.4.1-6.el6.i686.rpmrpm -ivh cpp-4.4.4-13.el6.i686.rpmrpm -ivh libgomp-4.4.4-13.el6.i686.rpmrpm -ivh nscd-2.12-1.7.el6.i686.rpmrpm -ivh glibc-headers-2.12-1.7.el6.i686.rpmrpm -ivh glibc-devel-
4、2.12-1.7.el6.i686.rpmrpm -ivh ppl-0.10.2-11.el6.i686.rpmrpm -ivh cloog-ppl-0.15.7-1.2.el6.i686.rpmrpm -ivh gcc-4.4.4-13.el6.i686.rpmecho gcc is installed successful!rpm -ivh libstdc+-4.4.4-13.el6.i686.rpmrpm -ivh libstdc+-devel-4.4.4-13.el6.i686.rpmrpm -ivh gcc-c+-4.4.4-13.el6.i686.rpm编译 make 安装 mak
5、e install解压:tar zxvf ngx_cache_purge-1.6.tar.gz解压后的目录:ngx_cache_purge-1.6然后进入到 cd nginx-1.4.4,进行配置、./configure -with-http_stub_status_module -prefix=/opt/nginx -add-module=./ngx_cache_purge-1.6编译、安装 make & make install1.linux 下面安装1.下载 pcre-8.10.tar.gz nginx-1.1.1.tar.gz2.安装 pcre 让nginx支持rewritepcre-
6、8.10.tar.gz 上传到/home 目录下面1) 解压 pcretar zxvf pcre-8.10.tar.gz 解压 pcre 后 /home 下面会有 pcre-8.10 文件夹2)配置pcrecd /home/ pcre-8.10./configure 输入该命令后屏幕会生成一堆文件,不用去管它3)make在linux 中输入 make 命令后屏幕会生成一堆文件,不用去管它4)安装在linux 中输入 make install3.安装 nginxnginx-1.1.1.tar.gz 上传到/home 目录下面1) 解压 nginxtar zxvf nginx-1.1.1.tar.
7、gz 解压 nginx 后 /home 下面会有nginx-1.1.1 文件夹2 配置nginxcd nginx-1.1.1./configure -prefix=/usr/local/nginx -with-http_stub_status_module3)make在linux 中输入 make 命令后屏幕会生成一堆文件,不用去管它4)安装在linux 中输入 make install5) 检查是否安装成功 cd /usr/local/nginx/sbin./nginx -t 结果显示:nginx: the configuration file /usr/local/nginx/conf/n
8、ginx.conf syntax is oknginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful6)启动nginx cd /usr/local/nginx/sbin 目录下面 输入 ./nginx 启动 nginx7 )检查是否启动成功ie 浏览器中输入 http:/192.168.15.132看到上面nginx 欢迎界面说明启动成功8)停止nginx pkill -9 nginxNginx的停止 nginx -s stop 修改 /nginx/nginx.conf文件 首行的 usr 后面
9、改为 root 切记修改后需要重启nginx服务说明nginx 默认配置端口是80.配置文件主要是conf 文件夹中的nginx.conf 文件启动nginx:cd /usr/local/nginx/sbin 目录下面 输入 ./nginx 启动nginxps -ef|grep nginxnetstat -nap|grep :80 /查看80端口被哪个进程占用service iptables stop /把防火墙打开,否则nginx不能被访问Nginx编译出错 make不了 stopMake不了事因为 ./configure配置的时候出错了,查看配置输出的内容, 部分配置显示如下:config
10、uring additional modulesadding module in ./masterzen-nginx-upload-progress-module-c7c663f+ ngx_http_uploadprogress_module was configuredadding module in ./vkholodkov-nginx-upload-module-2ec4e4f+ ngx_http_upload_module was configuredchecking for system md library . not foundchecking for system md5 li
11、brary . not foundchecking for OpenSSL md5 crypto library . foundchecking for sha1 in system md library . not foundchecking for OpenSSL sha1 crypto library . foundchecking for zlib library . foundcreating objs/MakefileConfiguration summary+ using PCRE library: ./pcre-8.13+ using OpenSSL library: ./op
12、enssl-1.0.0e+ md5: using system crypto library+ sha1: using system crypto library+ using system zlib library其中:zlib md5 sha1包都使用系统自带的,若系统没有,可下载安装aptitude search sha1aptitude search md5在这里遇到错误,我在之前从iso文件里读出来的Packages文件里面找对应的宝,找到的对应的几个安装包放在need2目录里了.找到合适的包,进行安装即可然后就可以编译了MakeMake installNginx启动出错 error
13、 while loading shared libraries:在centos5.7 32位上编译安照 nginx-1.1.16 出错用命令:/usr/local/nginx/sbin/nginx启动nginx时,服务无法启动,出现libpcre.so.1 not found的错误,解决方法如下:rootlocalhost conf# /usr/local/nginx/sbin/nginx/usr/local/nginx/sbin/nginx: error while loading shared libraries: libpcre.so.1: cannot open shared obje
14、ct file: No such file or directory从错误看出是缺少lib文件导致,进一步查看下先执行下述命令,查看共享库的信息 #ldd which /usr/local/nginx/sbin/nginx 显示如下: linux-gate.so.1 = (0x009a9000) libpthread.so.0 = /lib/libpthread.so.0 (0x00e13000) libcrypt.so.1 = /lib/libcrypt.so.1 (0x0027e000) libpcre.so.1 = not found libcrypto.so.10 = /usr/lib
15、/libcrypto.so.10 (0x002ae000) libz.so.1 = /lib/libz.so.1 (0x00d54000) libc.so.6 = /lib/libc.so.6 (0x005e9000) /lib/ld-linux.so.2 (0x00583000) libfreebl3.so = /lib/libfreebl3.so (0x00110000) libdl.so.2 = /lib/libdl.so.2 (0x008e9000) 可以看出 libpcre.so.1 = not found 并没有找到,进入/lib目录中手动链接下(这里的/lib目录指的是系统的根目
16、录下面的lib目录),64的位的要进入/lib64目录下执行如下: #cd /lib 因为事先已经安装过pcre库,所以纳闷为何找不到库。查看库的位置:如果是32位的用cd /lib ,如果是64位的用 cd /lib64之前配置一直没有成功是因为在lib里找不到类,后来发现在lib64里面才能找到对应的关系,具体的如下图: #ll libpcre*lrwxrwxrwx. 1 root root 16 Apr 27 18:42 /lib/libpcre.so.0 - libpcre.so.0.0.1-rwxr-xr-x. 1 root root 190732 Aug 19 2010 /lib/
17、libpcre.so.0.0.1 pcre库存在,只是名字不是libpcre.so.1,而是libpcre.so.0。尝试建立一个新的链接,解决这个问题: #ln -s libpcre.so.0.0.1 libpcre.so.1 再次查看一下: #ldd /usr/local/nginx/sbin/nginx 显示已经ok了: linux-gate.so.1 = (0x009a9000) libpthread.so.0 = /lib/libpthread.so.0 (0x00e13000) libcrypt.so.1 = /lib/libcrypt.so.1 (0x0027e000) libp
18、cre.so.1 = /lib/libpcre.so.1 (0x005b9000) libcrypto.so.10 = /usr/lib/libcrypto.so.10 (0x002ae000) libz.so.1 = /lib/libz.so.1 (0x00d54000) libc.so.6 = /lib/libc.so.6 (0x005e9000) /lib/ld-linux.so.2 (0x00583000) libfreebl3.so = /lib/libfreebl3.so (0x00110000) libdl.so.2 = /lib/libdl.so.2 (0x008e9000)
19、重新启动Nginx: /usr/local/nginx/sbin/nginx -s reload 启动成功!首页出来了,后续的tomcat动态内容页成功出现。 然后在启动nginx ok 了rootlocalhost lib# /usr/local/nginx/sbin/nginx命令查看是否成功:rootlocalhost lib# ps -ef |grep nginxroot 9539 1 0 19:06 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginxwww 9540 9539 0 19:06 ? 00:00:00 nginx: worker process
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1