• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦 > 學習電腦 > 電腦安全 > 網(wǎng)絡安全知識 > Nginx服務器的編譯安裝與配置

    Nginx服務器的編譯安裝與配置

    時間: 林澤1002 分享

    Nginx服務器的編譯安裝與配置

      Nginx 是一個很強大的輕量級、高性能Web和反向代理服務器,由俄羅斯人開發(fā)而成。它具有很多非常優(yōu)越的特性:在高連接并發(fā)的情況下,Nginx是Apache服務器不錯的替代品。而且還可以作為負載均衡服務器,代碼用C語言完成,運行效率非常高,還可以做郵件代理服務器。下面是學習啦小編跟大家分享的是Nginx服務器的編譯安裝與配置,歡迎大家來閱讀學習。

      Nginx服務器的編譯安裝與配置

      工具/原料

      Linux服務器或虛擬機一臺(這里使用的CentOS6.5)

      Nginx源碼包 (這里使用1.44的版本,下載鏈接:http://pan.baidu.com/s/1qWoe2te 密碼:fqji)

      方法/步驟

      1要編譯安裝Nginx,首先我們要安裝依賴包 pcre-devel 和 zlib-devel:

      # yum install pcre-devel zlib-devel -y

      程序默認是使用 nobody 身份運行的,我們建議使用 nginx 用戶來運行,首先添加Nginx組和用戶,不創(chuàng)建家目錄,不允許登陸系統(tǒng)

      # groupadd nginx

      # useradd -M -s /sbin/nologin -g nginx nginx

      2準備工作完成后就是下載編譯安裝Nginx了,可以從我提供的網(wǎng)盤下載,也可以去Nginx的官網(wǎng)下載。

      首先解壓源碼包:

      # tar xf nginx-1.4.4.tar.gz

      然后 cd 到解壓后的目錄就可以執(zhí)行 ./configure 了

      # cd nginx-1.4.4

      指定安裝目錄和運行時用的屬主和屬組,并啟用狀態(tài)監(jiān)控模塊等

      # ./configure \

      --prefix=/usr/local/nginx \

      --pid-path=/var/run/nginx/nginx.pid \

      --lock-path=/var/lock/nginx.lock \

      --user=nginx \

      --group=nginx \

      --with-http_ssl_module \

      --with-http_flv_module \

      --with-http_stub_status_module \

      --with-http_gzip_static_module \

      --http-client-body-temp-path=/var/tmp/nginx/client/ \

      --http-proxy-temp-path=/var/tmp/nginx/proxy/ \

      --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \

      --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \

      --http-scgi-temp-path=/var/tmp/nginx/scgi \

      --with-pcre

      等配置完成后就可以 make && make install 了

      # make && make install

      # mkdir /var/tmp/nginx/client/ -pv

      3等編譯安裝完成后在 /usr/local 下就會出現(xiàn) Nginx 這個目錄了,進入這個目錄后發(fā)現(xiàn)目錄非常簡單。它的配置文件存放在 conf 目錄中,網(wǎng)頁文件存放在 html 中,日志文件存放在 logs 中,sbin 目錄下只有一個可執(zhí)行程序 "nginx"

      接下來我們簡單的為它提供一個服務腳本吧!

      # vim /etc/init.d/nginx

      新建文件/etc/rc.d/init.d/nginx,內(nèi)容如下:

      #!/bin/bash

      # chkconfig:235 85 15

      # description: Nginx is an HTTP server

      . /etc/rc.d/init.d/functions

      start() {

      echo "Start..."

      /usr/local/nginx/sbin/nginx &> /dev/null

      if [ $? -eq 0 ];then

      echo "Start successful!"

      else

      echo "Start failed!"

      fi

      }

      stop() {

      if killproc nginx -QUIT ;then

      echo "Stopping..."

      fi

      }

      restart() {

      stop

      sleep 1

      start

      }

      reload() {

      killproc nginx -HUP

      echo "Reloading..."

      }

      configtest() {

      /usr/local/nginx/sbin/nginx -t

      }

      case class="main">

    學習啦 > 學習電腦 > 電腦安全 > 網(wǎng)絡安全知識 > Nginx服務器的編譯安裝與配置

    Nginx服務器的編譯安裝與配置

    時間: 林澤1002 分享

      start)

      start ;;

      stop)

      stop ;;

      restart)

      restart ;;

      reload)

      reload ;;

      configtest)

      configtest ;;

      *)

      echo "Usage: nginx {start|stop|restart|reload|configtest}"

      ;;

      esac

      之后給這個文件可執(zhí)行權限:

      # chmod +x /etc/init.d/nginx

      好了,現(xiàn)在可以使用 start,stop 這些參數(shù)控制Nginx服務了

      4由于腳本是我自己寫的,還有許多不盡人意的地方,歡迎大家修改和完善!

      現(xiàn)在我們就試試啟動服務看看效果吧:

      # service nginx start

      記得關閉 SElinux 和 iptables 防火墻哦,

      # service iptables stop

      # setenforce 0

      接下來就在瀏覽器中訪問你服務的IP看看效果吧!是不是出項了歡迎的字樣呢

      接下來就研究下 Nginx 的配置文件吧!

      # vim /usr/local/nginx/conf/nginx.conf

      各項參數(shù)的意義如下:

      worker_processes 1; 工作進程數(shù)量

      error_log logs/error.log; 日志文件位置

      pid logs/nginx.pid; pid文件位置

      worker_connections 1024; 沒進程的連接數(shù)

      listen 80; 監(jiān)聽端口

      server_name localhost; 主機名

      root html; 網(wǎng)站根目錄

      index index.html index.htm; 網(wǎng)站索引頁

      error_page 500 502 503 504 /50x.html; 訪問錯誤頁面

      剩下的其他被注釋掉的代碼塊:

      location ~ \.php$ { . . . . . . } 對PHP的支持,需要安裝PHP

      server { . . . . . . } 添加server代碼塊能添加虛擬主機

      剩下還有監(jiān)聽443端口的超文本傳輸安全協(xié)議 HTTPS server 需要在編譯Nginx時添加ssl的支持

      接下來我們試著添加一臺虛擬主機吧,虛擬主機的添加可以基于端口,可以基于IP,也可以基于主機名,我們挨個來看看:

      基于端口:

      首先編輯配置文件,添加server代碼塊,記得要寫到http{ . . . . . . }這個大的代碼塊中。

      server {

      listen 8080;

      server_name localhost;

      location / {

      root /var/www/html;

      index index.html index.htm;

      }

      }

      這樣就添加了一個監(jiān)聽8080端口的服務,你也可以定義自己喜歡的端口哦。

      接下來檢查下配置文件有沒有問題,如果最后一個單詞顯示successful就代表沒問題了,可以重新啟動Nginx了

      # service nginx configtest

      # service nginx restart

      接下來就給第二個虛擬主機寫一個index吧!首先創(chuàng)建目錄

      # mkdir -pv /var/www/html

      # echo '

    Hi! This is 8080!

    ' > /var/www/html/index.html

      好了 接下來試著在瀏覽器中訪問訪問,記得第二個主機要加上端口訪問哦

      現(xiàn)在試著用不同的IP建立虛擬主機吧!我們可以在一塊網(wǎng)卡上綁定多個IP地址的方式來實現(xiàn)

      # ifconfig eth0:0 10.0.0.4/8

      記得把IP換成你自己的哦!然后ifconfig看看是不是多出來一個網(wǎng)卡IP了呢

      讓后繼續(xù)修改配置文件,這回要修改兩個地方,一個是原本自帶的站點的 listen 項,一個是自己添加的站點的 listen 項。

      基于IP:

      server {

      listen 10.0.0.3:80;

      server_name localhost;

      location / {

      root html;

      index index.html index.htm;

      }

      }

      server {

      listen 10.0.0.4:80;

      server_name localhost;

      location / {

      root /var/www/html;

      index index.html index.htm;

      }

      }

      讓他們只監(jiān)聽不同的IP,用相同的端口

      接下來再瀏覽器上用不同的IP來訪問試試吧,及的還得重啟Nginx,先檢查一下,出現(xiàn)錯誤了看看哪里配置的不對,然后就可以重啟了。

      # service nginx congiftest

      # service nginx restart

      如果配置給網(wǎng)卡的第二個IP不想要了,把它停掉就可以了

      # ifconfig eth0:0 down

      再 ifconfig 看看是不是沒有了呢

      現(xiàn)在試試用不同的主機名吧!也是企業(yè)用的最多的方式。我們把兩個站點的listen項都改為80,然后修改service_name項為定義的主機名

      基于主機名:

      server {

      listen 80;

      server_name ybmq.com;

      location / {

      root html;

      index index.html index.htm;

      }

      }

      server {

      listen 80;

      server_name zhzz.com;

      location / {

      root /var/www/html;

      index index.html index.htm;

      }

      }

      然后重啟Nginx吧!

      可是我們在瀏覽器上怎么通過域名訪問呢?要知道我們訪問 baidu 啊,qq 啊之類的是通過DNS服務器的,難道我們還要配置一臺DNS服務器?其實不然,我們通過修改客戶機的 hosts 文件就可以了。hosts文件是一個本地的域名解析文件,我們要解析哪些域名只要把域名和對應的IP寫到一起就可以了。在Windows XP之后的系統(tǒng)中,這個文件位于:

      C:\Windows\System32\drivers\etc\hosts

      我們用文本編輯器打開,添加兩個相同的IP對應的兩個不同的主機名就可以了。

      如下圖所示

      如果你打開這個文件發(fā)現(xiàn)已經(jīng)有很多IP地址了,可以直接在最后加入這兩行,也可以直接清空這個文件,不會有什么問題的。這個文件的用途還可以屏蔽一些網(wǎng)站哦,只需要把網(wǎng)址對于的IP改為 127.0.0.1 也就是本地回環(huán)地址,瀏覽器查詢域名對應的IP時時先通過查詢這個文件的,如果查詢到了,不管對錯都不會訪問DNS服務器了,所以我們給它一個錯誤的地址,那它一輩子也打不開被屏蔽掉的網(wǎng)站了。

      好了 接下來就在瀏覽器中試試用用域名訪問你的兩個站點吧。

      如果大家還用IP訪問會是什么情況呢?我不說了,大家還是自己測試吧 哈哈o(^▽^)o

      Nginx的如何新建虛擬主機就到這里了,還記不記得在編譯安裝的時候的

      --with-http_stub_status_module 這個參數(shù)?它的作用是啟用狀態(tài)統(tǒng)計模塊,下面我們就開啟這個模塊看看吧!

      還是編輯Nginx的配置文件,要監(jiān)控哪一個站點,就在那個站點的server中添加:

      location ~ /status {

      stub_status on;

      access_log off;

      }

      接著重啟Nginx

      我們可以通過在域名或IP后添加 " /status " 來訪問狀態(tài)統(tǒng)計:

      http://ybmq.com/status

      它會顯示活動的連接和響應的次數(shù),還有其他更多的統(tǒng)計選項這里就不再列舉了,感興趣的話可以問度娘查閱更多資料

    2682294 主站蜘蛛池模板: 怡红院免费的全部视频| 阿娇被躁120分钟视频| 男人资源在线观看| 成人18xxxx网站| 国产一卡2卡3卡4卡公司在线 | 最新版天堂中文在线| 国产精品成人久久久| 亚洲成av人片在线观看天堂无码| 99精品视频在线观看| 波多野结衣伦理视频| 在线无码午夜福利高潮视频| 人人人妻人人澡人人爽欧美一区| www.99热| 爽爽日本在线视频免费| 在线观看人成网站深夜免费| 亚洲欧美综合乱码精品成人网| japanese国产在线看| 狠狠色狠狠色综合日日不卡 | 久久久受www免费人成| 蜜臀91精品国产免费观看 | 精品人人妻人人澡人人爽牛牛 | 波多野结衣中文字幕电影| 国产高清在线不卡| 亚洲国产一二三精品无码| 麻豆国产精品免费视频| 最近中文字幕mv手机免费高清| 国产日韩欧美亚欧在线| 久久国产精品免费一区二区三区 | 国产高清一级毛片在线不卡| 亚洲成人aaa| 97视频免费在线| 无套进入30p| 免费又黄又硬又爽大片| 99er在线视频| 欧美kkk4444在线观看| 国产公开免费人成视频| 一级特黄aaa大片在| 激情无码人妻又粗又大| 国产精品亚洲а∨无码播放麻豆| 久久精品卫校国产小美女| 美女隐私尿口视频网站|