最新版本下载地址
http://nginx.org/en/download.html
下载源码包
wget http://nginx.org/download/nginx-0.8.53.tar.gz
解压
tar -zxvf nginx-0.8.53.tar.gz
cd nginx-0.8.53
配置nginx
./configure --prefix=/opt/nginx --with-http_stub_status_module
解释: –prefix 为安装路径,–with-为需要安装的模块,具体可以运行./configure –help 查看有效模块
编译并安装 nginx
make && make install
-------------------------------------
安装提示:
./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using –without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using –with-pcre= option.
解决办法:
从上面的提示可以看出,需要安装PCRE库
可以从下面下载,我一开始下载了一个,不过还是不行,后来下一个版本高的,就可以了!
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
安装pcre
tar -zxvf pcre-8.34.tar.gz
cd pcre-8.34
./configure
make && make install
继续编译并安装 nginx
make && make install
启动 nginx
/opt/nginx/sbin/nginx
-------------------------------------
提示:
/opt/nginx/sbin/nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
解决方法:
ldd /opt/nginx/sbin/nginx =====>查看链接库是否正常
linux-vdso.so.1 => (0x00007fff25dff000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f549c495000)
libpcre.so.1 => not found ======>没找到对应库
libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007f549c0b4000)
libz.so.1 => /lib64/libz.so.1 (0x00007f549be9e000)
libc.so.6 => /lib64/libc.so.6 (0x00007f549bb0a000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f549b892000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f549b68e000)
/lib64/ld-linux-x86-64.so.2 (0x00007f549c6d2000)
n -s libpcre.so.0.0.1 libpcre.so.1
-------------------------------------
再次启动 nginx
/opt/nginx/sbin/nginx
查看nginx是否正常启动
ps -ef |grep nginx
配置负载均衡
vim conf/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
# 自己定义的两个 tomcat 请求地址和端口
# 也就是当浏览器请求:tomcat.youmeek.com 的时候从下面这两个 tomcat 中去找一个进行转发
upstream tomcatCluster {
server 192.168.1.114:8080;
server 192.168.1.114:8081;
# 添加 weight 字段可以表示权重,值越高权重越大,默认值是 1,最大值官网没说,一般如果设置也就设置 3,5,7 这样的数
# 官网:https://www.nginx.com/resources/admin-guide/load-balancer/#weight
# server 192.168.1.114:8080 weight=2;
# server 192.168.1.114:8081 weight=1;
}
server {
listen 80;
# 配置ip或者是域名可以用逗号隔开多个配置
server_name tomcat.youmeek.com;
location / {
proxy_pass http://tomcatCluster;
index index.html index.htm;
}
}
}