Linux系統下Nginx的安裝和配置
系統環境:centos7 64位
Nginx介紹
1)什麼是Nginx
Nginx是一款高效能的http 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器。由俄羅斯的程式設計師Igor Sysoev所開發,官方測試nginx能夠支支撐5萬併發連結,並且cpu、記憶體等資源消耗卻非常低,執行非常穩定。 ####2)Nginx使用場景 - http伺服器。Nginx是一個http服務可以獨立提供http服務。可以做網頁靜態伺服器。 - 虛擬主機。可以實現在一臺伺服器虛擬出多個網站。例如個人網站使用的虛擬主機。 - 反向代理,負載均衡。當網站的訪問量達到一定程度後,單臺伺服器不能滿足使用者的請求時,需要用多臺伺服器叢集可以使用nginx做反向代理。並且多臺伺服器可以平均分擔負載,不會因為某臺伺服器負載高宕機而某臺伺服器閒置的情況。
Nginx安裝
1)官網地址
官方網站:
http://nginx.org/
2)安裝環境要求
1、需要安裝gcc的環境。yum install gcc-c++ 2、第三方的開發包。 >PCRE PCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 相容的正則表示式庫。nginx的http模組使用pcre來解析正則表示式,所以需要在linux上安裝pcre庫。 yum install -y pcre pcre-devel 注:pcre-devel是使用pcre開發的一個二次開發庫。nginx也需要此庫。 >zlib zlib庫提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。 yum install -y zlib zlib-devel >openssl OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼演算法、常用的金鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程式供測試或其它目的使用。 nginx不僅支援http協議,還支援https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫。 yum install -y openssl openssl-devel
3)安裝步驟
1:把nginx的原始碼包上傳到linux系統
2:解壓縮
[[email protected] ~]# tar zxf nginx-1.8.0.tar.gz
3:使用configure命令建立一makeFile檔案。
./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
注意:啟動nginx之前,上邊將臨時檔案目錄指定為/var/temp/nginx,需要在/var下建立temp及nginx目錄
[[email protected] sbin]# mkdir /var/temp/nginx/client -p
4:make,編譯Nginx原始碼
5:make install,安裝
4)shell指令碼一鍵安裝
編寫shell指令碼:nginx-install.sh
指令碼使用方法:./nginx-install.sh Nginx壓縮包絕對路徑 安裝路徑
注意一定是絕對路徑
舉例:
#!/bin/bash
#安裝gcc
yum install gcc-c++
#安裝PCRE
yum install -y pcre-devel
#安裝zlib
yum install -y zlib zlib-devel
#安裝openssl
yum install -y openssl openssl-devel
#接收引數1,Nginx壓縮包絕對路徑
p1=$1
#接收引數2,Nginx即將要安裝到的絕對路徑
p2=$2
echo "zip file path :"$p1
echo "install path :"$p2
#解壓目錄
unzipParentDir=${p1%/*}
echo $unzipParentDir
temp=${p1%t*}
#解壓後的目錄
unzipDir=${temp%.*}
#執行解壓命令
tar -xzvf $p1 -C $unzipParentDir
#進入解壓後的目錄
cd $unzipDir
#建立目錄/var/temp/nginx -p
mkdir /var/temp/nginx -p
#執行configure命令生成Makefile檔案
./configure \
--prefix=$p2 \
--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
#編譯
make
#安裝
make install
#進入安裝目錄
cd $p2
#進入sbin目錄
cd sbin
#啟動Nginx
./nginx
#關閉防火牆
systemctl stop firewalld.service
#檢視啟動狀態
ps aux|grep nginx
5)啟動Nginx
進入sbin目錄
[[email protected] sbin]# ./nginx 啟動
[[email protected] sbin]# ps aux|grep nginx 檢視Nginx狀態
6)訪問Nginx
訪問192.168.1.130,看到以下頁面。證明Nginx啟動成功
配置虛擬主機
我們可以在一臺伺服器上安裝多臺Tomcat執行不同的網站,對外訪問的ip都是相同的,接下來我們通過配置虛擬主機的方式來訪問不同的網站。
1)配置不同埠區分不同虛擬主機
進入Nginx安裝目錄下的conf目錄,vim命令開啟nginx.conf檔案
nginx.conf檔案內容如下:
新增一個server節點就是新增一臺虛擬主機
修改了配置檔案我們需要重新整理一下配置
2)配置不同域名區分不同虛擬主機
修改window的hosts檔案:(C:\Windows\System32\drivers\etc)
可以配置域名和ip的對映關係,如果hosts檔案中配置了域名和ip的對應關係,不需要走dns伺服器。
域名的配置:
192.168.1.128 www.jd.com
192.168.1.130 www.baidu.com
修改nginx.conf
測試:
訪問www.jd.com
訪問www.taobao.com
反向代理
1)什麼是反向代理
1、正向代理,意思是一個位於客戶端和原始伺服器(origin server)之間的伺服器,為了從原始伺服器取得內容,客戶端向代理髮送一個請求並指定目標(原始伺服器),然後代理向原始伺服器轉交請求並將獲得的內容返回給客戶端。客戶端才能使用正向代理。
2、反向代理(Reverse Proxy)方式是指以代理伺服器來接受internet上的連線請求,然後將請求轉發給內部網路上的伺服器,並將從伺服器上得到的結果返回給internet上請求連線的客戶端,此時代理伺服器對外就表現為一個反向代理伺服器。
2)Nginx實現反向代理
兩個域名指向同一臺nginx伺服器,使用者訪問不同的域名顯示不同的網頁內容。
兩個域名是www.jd.com.cn和www.test.com
修改nginx.conf配置
測試:
訪問www.jd.com
訪問www.test.com
負載均衡
1)什麼是負載均衡
如果一個服務由多條伺服器提供,需要把負載分配到不同的伺服器處理,需要負載均衡。
2)Nginx實現負載均衡
修改nginx.conf配置
測試訪問:
www.jd.com並不斷重新整理將會看到兩個頁面交替出現
可以根據伺服器的實際情況調整伺服器權重。權重越高分配的請求越多,權重越低,請求越少。預設是都是1
相關推薦
Nginx Linux系統下的安裝和配置應用
Nginx 安裝配置 Nginx("engine x")是一款是由俄羅斯的程式設計師Igor Sysoev所開發高效能的 Web和 反向代理 伺服器,也是一個 IMAP/POP3/SMTP 代理伺服器。 在高連線併發的情況下,Nginx是Apache伺服器
Linux 系統下 JDK 安裝和 Java 環境變數配置
1. 下載 JDK Linux 版本的 JDK 包有兩種形式,rpm包 和 tar.gz包,這裡下載 JDK 8 的 tar.gz 包,tar.gz 是普通的壓縮包檔案,直接解壓即可。 以 32 位
Keepalived介紹以及在Linux系統下的安裝與配置
一、簡介 Keepalived是一個免費開源的,用C編寫的類似於layer3, 4 & 7交換機制軟體,具備我們平時說的第3層、第4層和第7層交換機的功能。主要提供loadbalancing(負載均衡)和 high-availability(高可用)功能,負載均衡實現需要依賴Linux的虛
Linux系統下Nginx的安裝和配置
系統環境:centos7 64位 Nginx介紹 1)什麼是Nginx Nginx是一款高效能的http 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器。由俄羅斯的程式設計師Igor Sysoev所開發,官方測試n
Db2數據庫在Linux下的安裝和配置
fig 用戶密碼 oca authent linux token reat local ken 一.DB2數據庫的安裝和配置: 1.安裝完成後,需要增加三個操作系統的組和三個操作系統用戶,如下: groupadd -g 999 db2iadm1 #(管理實例的組) gro
CentOS系統下Redis安裝和自啟動配置的步驟
管理 nec 還需要 client chm 運行時 roo shu 推薦 相信大家都知道Redis是一個C實現的基於內存、可持久化的鍵值對數據庫,在分布式服務中常作為緩存服務。所以這篇文章將詳細介紹在CentOS系統下如何從零開始安裝到配置啟動服務。有需要的可以參考借鑒。
python在windows和linux下的安裝和配置
str net .net cat ria 技術 連接 top 成功 一、windows下安裝python3.6 安裝編輯器:Ecplise+pydev插件 Eclipse是寫JAVA的IDE, 這樣就可以通用了,學習代價小。 學會了Eclipse, 以後寫Pytho
windows下的nginx安裝和配置及與tomcat關聯配置記錄
1. 官方中文說明:http://wiki.nginx.org/NginxChs 或者http://nginx.org/ 下載:當前穩定版: Nginx 1.0.5 | Nginx/windows 1.0.5 (更新記錄) (2011年7月19日) 我們下
centos 6.x和7.x 下nginx安裝與配置
一、安裝gcc(命令:yum install gcc) 備註:可以輸入gcc -v 查詢版本資訊,看系統是否自帶安裝 二、安裝pcre(命令: yum install pcre-devel) 三、安裝zlib 四、安裝openssl 綜合命令: yum -y inst
Python 爬蟲框架 Scrapy 在 Windows10 系統環境下的安裝和配置
環境: Windows10 系統、python3.4.3 版本 安裝 Scrapy : 使用 pip 安裝 Scrapy,在命令列視窗中輸入命令 “pip install Scrapy”,若不報錯即可安裝成功。 注意:可在命令列視窗中輸入命令“pip -h”測試 pip 模組是否已安
Linux下MongoDB安裝和配置詳解
1、建立MongoDB的安裝路徑 在/usr/local/ 建立資料夾mongoDB 2、上傳檔案到Linux上的/usr/local/source目錄下 3、解壓檔案 進入到/usr/local/source目錄,執行如下命令: tar -zxvf m
Mysql 在 windows 和 linux 下的安裝和配置
這篇文章講解 Mysql 在 Windows 下的手動安裝和在 Linux(CentOs) 下的下載、配置、連線。還包括預設字符集等的設定。 首先,都要執行移除資料庫的操作 mysqld --remov
nginx和mycat在Windows系統中的安裝和配置
nginx在Windows上的搭建 1.解壓Windows安裝包到D:\program files(x86) 2.配置檔案 開啟nginx安裝目錄找到conf資料夾,開啟nginx.conf 配置訪問節點 upstream tomcat1
Linux/CentOS環境下如何安裝和配置PhantomJS工作環境
1. 安裝步驟 1.1 在伺服器上新建想要下載和安裝的目錄: 如mkdir PhantomJS 1.2 下載PhantomJS安裝包 wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-
Linux下MongoDB安裝和配置詳解(一)
一、MongoDB的安裝 1.下載安裝包 下載方式: curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.9.tgz 解壓縮壓縮包: tar zxvf mongodb-linux-x
Linux下MongoDB安裝和配置詳解(三)
一、將mongod服務新增為系統服務 MongoDB安裝之後,每次都需要執行命令加引數來啟動,不便於管理,這裡可以將其新增到系統服務,方法如下: 1、建立檔案 linux系統服務啟動檔案都存放
linux系統上nginx安裝及簡單的反向代理配置
本文是寫給那些剛剛接觸linux的新手寫的,#符號後面的都是命令可以複製進去,你有發展linux的打算也可以手打加深對命令的瞭解。 第一步:# yum -y installgcc-c++(C編譯器下面的安裝包需要) Linux系統下Nginx的原始碼編譯安裝模組依賴性
Ubuntu 下Apache安裝和配置2
spl pac ubuntu server ould start warn it works apache。 在Ubuntu上安裝Apache,有兩種方式:1 使用開發包的打包服務,例如使用apt-get命令;2 從源碼構建Apache。本文章將詳細描述這兩種不同的安裝方式
Nginx 之 Nginx安裝和配置文件簡要介紹
安裝 配置文件 1 概述本文主要介紹了nginx的兩種安裝方法,通過yum和編譯安裝,同時對安裝後的配置文件的語法和格式進行了簡要的介紹2 nginx的安裝2.1 yum安裝nginx在光盤自帶的base源裏沒有,需要通過官方路徑或者是epel源中安裝.官方:http://nginx.org/pack
vagrant在windows下的安裝和配置
eas 官網 with sta .com 處理器 mac val rim 記錄一下安裝和配置過程中的一些坑步驟一分別下載vagrant和VirtualBox,我這裏下載的是vagrant_1.9.1.msi 和 VirtualBox-5.1.14-112924-Win.ex