centos7原始碼編譯安裝NGINX
1、 什麼是nginx
Nginx是一款高效能的http 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器。官方測試nginx能夠支支撐5萬併發連結,並且cpu、記憶體等資源消耗卻非常低,執行非常穩定。
2、下載
進入http://nginx.org/en/download.html 下載nginx1.8.0版本(當前最新穩定版本)。
3、nginx安裝環境
[[email protected] ~]# yum –y install gcc-c++
[[email protected] ~]# yum install -y pcre pcre-devel
[
[[email protected] ~]# yum install -y openssl openssl-devel
4、編譯安裝
將nginx-1.8.0.tar.gz拷貝至linux伺服器。
解壓:
[[email protected] ~]# tar -zxvf nginx-1.8.0.tar.gz
[[email protected] ~]# cd nginx-1.8.0
[[email protected] ~]# mkdir -p /var/temp/nginx
[[email protected] ~]# ./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
[[email protected] ~]#make -j 4
[[email protected] ~]#make install
5、啟動nginx
[[email protected] ~]# cd /usr/local/nginx/sbin/
[[email protected] ~]# ./nginx
6、查詢nginx程序
[[email protected] ~]# ps -aux |grep nginx
root 10478 0.0 0.0 24880 800 ? Ss 17:19 0:00 nginx: master process ./sbin/nginx
nobody 10479 0.0 0.0 27320 1816 ? S 17:19 0:00 nginx: worker process
root 12025 0.0 0.0 112704 976 pts/0 R+ 17:37 0:00 grep --color=auto nginx
7、停止nginx
[[email protected] ~]#/usr/local/nginx/sbin/nginx -s stop
8、重新載入配置
[[email protected] ~]#/usr/local/nginx/sbin/nginx -s reload
9、nginx反向代理
通常的代理伺服器,只用於代理內部網路對Internet的連線請求,客戶機必須指定代理伺服器,並將本來要直接傳送到Web伺服器上的http請求傳送到代理伺服器中由代理伺服器向Internet上的web伺服器發起請求,最終達到客戶機上網的目的。
而反向代理(Reverse Proxy)方式是指以代理伺服器來接受internet上的連線請求,然後將請求轉發給內部網路上的伺服器,並將從伺服器上得到的結果返回給internet上請求連線的客戶端,此時代理伺服器對外就表現為一個反向代理伺服器。
如下圖:
10、 nginx反向代理配置 (反向代理rabbitmq)
#配置一個代理即rabbitmq伺服器
upstream rabbitmq_server {
server 192.168.101.5:15672;
}
#配置一個虛擬主機
server {
listen 80;
server_name rabbitmq.xinglinglove.cn;
location / {
proxy_pass http://rabbitmq_server ;
}
11、測試