1. 程式人生 > >阿里雲CentOS7.3安裝Nginx以及配置

阿里雲CentOS7.3安裝Nginx以及配置

Nginx的安裝

第一步:配置依賴環境

nginx是C語言開發,建議在linux上執行,這裡使用Centos7.3作為安裝環境。

  • gcc

安裝nginx需要先將官網下載的原始碼進行編譯,編譯依賴gcc環境,如果沒有gcc環境,需要安裝gcc:

yum install gcc-c++
  • 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

第二步:將ngnix的linux原始碼上傳到linux下,並解壓

這裡寫圖片描述
進入解壓目錄

cd nginx-1.10.3

第三步:進行configure配置,複製全部命令,一次輸入

./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

注意:
其中,安裝目錄為/usr/local/nginx
上邊將臨時檔案目錄指定為/var/temp/nginx,需要在/var下建立temp及nginx目錄

mkdir -p /var/temp/nginx

第四步:

nginx-1.10.3解壓目錄下,執行命令

make

第五步:

make install

到此,安裝完成!

啟動

進入/usr/local/nginx安裝目錄的sbin目錄,執行命令

./nginx

測試

這裡寫圖片描述

注意:如果訪問不到,可能是防火牆未開放80埠

  • CentOS6.5
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 
/etc/rc.d/init.d/iptables save
  • CentOS7.3
firewall-cmd --permanent --zone=public --add-port=80/tcp --permanent
firewall-cmd –reload

關閉

./nginx -s stop

重新整理

./nginx -s reload

Nginx的配置

這裡寫圖片描述

使用nginx配置虛擬機器

二、通過埠區分虛擬機器

原有配置
這裡寫圖片描述
這裡寫圖片描述
新增多個監聽不同埠的server節點來配置多個虛擬主機

server {
     listen       81;
     server_name  localhost;

     location / {
         root   html81;
         index  index.html index.htm;
     }
}

二、通過域名區分虛擬機器

1、域名介紹
這裡寫圖片描述
2、配置基於域名的虛擬主機
新增多個域名不同的server節點來配置多個虛擬主機

server {
     listen       80;
     server_name  test1.taotao.com;

     location / {
         root   taotao1;
         index  index.html index.htm;
     }
}

server {
     listen       80;
     server_name  test2.taotao.com;

     location / {
         root   taotao2;
         index  index.html index.htm;
     }
}