Ubuntu中Nginx怎么安裝與配置

本篇內(nèi)容主要講解“Ubuntu中Nginx怎么安裝與配置”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Ubuntu中Nginx怎么安裝與配置”吧!

創(chuàng)新互聯(lián)憑借專業(yè)的設(shè)計(jì)團(tuán)隊(duì)扎實(shí)的技術(shù)支持、優(yōu)質(zhì)高效的服務(wù)意識(shí)和豐厚的資源優(yōu)勢(shì),提供專業(yè)的網(wǎng)站策劃、成都做網(wǎng)站、網(wǎng)站制作、網(wǎng)站優(yōu)化、軟件開發(fā)、網(wǎng)站改版等服務(wù),在成都十年的網(wǎng)站建設(shè)設(shè)計(jì)經(jīng)驗(yàn),為成都數(shù)千家中小型企業(yè)策劃設(shè)計(jì)了網(wǎng)站。

1.nginx介紹

     nginx是一個(gè)非常輕量級(jí)的http服務(wù)器,nginx,它的發(fā)音為“engine x”, 是一個(gè)高性能的http和

反向代理服務(wù)器,同時(shí)也是一個(gè)imap/pop3/smtp 代理服務(wù)器。

2.對(duì)php支持

     目前各種web 服務(wù)器對(duì)php的支持一共有三種:

   (1)通過web 服務(wù)器內(nèi)置的模塊來實(shí)現(xiàn),例如apache的mod_php5,類似的apache內(nèi)置的mod_perl

可以對(duì)perl支持。

   (2)通過cgi來實(shí)現(xiàn),這個(gè)就好比之前perl的cgi,該種方式的缺點(diǎn)是性能差,因?yàn)槊看畏?wù)器遇到

這些腳本都需要重新啟動(dòng)腳本解析器來執(zhí)行腳本然后將結(jié)果返回給服務(wù)器;

另一方面就是不太安全;該方面幾乎很少使用了。

   (3)最新出現(xiàn)一種叫做fastcgi。所謂fastcgi就是對(duì)cgi的改進(jìn)。它一般采用c/s結(jié)構(gòu),一般腳本處理器

會(huì)啟動(dòng)一個(gè)或者多個(gè)daemon進(jìn)程,每次web 服務(wù)器遇到腳本的時(shí)候,直接交付給fastcgi的進(jìn)程來執(zhí)行,然后

將得到的結(jié)果(通常為html)返回給瀏覽器。

2.1 apache+mod_php模式

     我們很久一段時(shí)間使用經(jīng)典的apache+mod_php。

     apache對(duì)php的支持是通過apache的模塊來支持的。如果從源代碼編譯安裝php的話,如果希望apache支持

php的話,在./configure步驟需要指定--with-apxs2=/usr/local/apache2/bin/apxs 表示告訴編譯器通過

apache的mod_php5/apxs來提供對(duì)php5的解析;而且在最后一步make install的時(shí)候我們會(huì)看到將動(dòng)態(tài)鏈接庫

libphp5.so拷貝到apache2的安裝目錄的modules目錄下,并且還需要在httpd.conf配置文件中添加loadmodule

語句來動(dòng)態(tài)將libphp5.so模塊加載進(jìn)來,從而實(shí)現(xiàn)apache對(duì)php的支持。

2.2 nginx+fastcgi模式

     nginx完全是輕量級(jí)的,必須借助第三方的fastcgi處理器才可以對(duì)php進(jìn)行解析,因此其實(shí)這樣看來nginx是

非常靈活的,它可以和任何第三方提供解析的處理器實(shí)現(xiàn)連接從而實(shí)現(xiàn)對(duì)php的解析(在nginx.conf中很容易設(shè)置)。

     nginx可以使用spwan-fcgi。在早期版本中需要安裝lighttpd,但是在9.10版本以后直接安裝spawn-fcgi就可以。

現(xiàn)在出現(xiàn)了新的第三方的php的fastcgi處理器,叫做php-fpm,可以了解一下。本文是基于spawn-fcgi實(shí)現(xiàn)對(duì)

php模塊的支持。

2.3 安裝fastcgi

      /usr/bin/spawn-fcgi這個(gè)文件來管理 fastcgi,它原屬于lighttpd這個(gè)包里面,但 9.10 后,spawn-fcgi

被分離出來單獨(dú)成包。

   (1)使用apt-get在線安裝命令如下:

         $sudo apt-get install spawn-fcgi

   (2)源代碼安裝如下,下載地址為:

         解壓縮以后,進(jìn)入目錄下執(zhí)行如下安裝命令:

         $./configure

         $make

         $make install

        安裝之后,spawn-fcgi命令就可以直接使用了,它的可執(zhí)行文件在/usr/local/bin/spawn-fcgi。

3.nginx安裝

3.1 安裝nginx

     (1)在線安裝

          $sudo apt-get install nginx

      nginx的版本是1.2.1

      ubuntu安裝nginx之后的文件結(jié)構(gòu)大致為:

      所有的配置文件都在/etc/nginx下,并且每個(gè)虛擬主機(jī)已經(jīng)安排在了/etc/nginx/sites-available下

      啟動(dòng)程序文件在/usr/sbin/nginx

      日志放在了/var/log/nginx中,分別是access.log和error.log

      并已經(jīng)在/etc/init.d/下創(chuàng)建了啟動(dòng)腳本nginx

      默認(rèn)的虛擬主機(jī)的目錄設(shè)置在了/usr/share/nginx/www

    (2)源代碼安裝

      下載地址:

      我這里下載的是 nginx-1.3.9.tar.gz,安裝過程很簡單,如下:

      $./configure

      $make

      $make install

      安裝成功之后,nginx放置在/usr/local/nginx目錄下,主要的配置文件為conf目錄下的nginx.conf,

nginx的啟動(dòng)文件在sbin目錄下的nginx文件。

3.2 啟動(dòng)nginx

   (1)在線安裝的啟動(dòng)過程

      $sudo /etc/init.d/nginx start

   (2)源代碼安裝的啟動(dòng)過程

      $cd /usr/local/nginx

      $sbin/nginx

      然后就可以訪問了,http://localhost/ , 一切正常!如果不能訪問,先不要繼續(xù),看看是什么原因,

解決之后再繼續(xù)。

      如果你的機(jī)器同時(shí)安裝了apache,那上面的訪問方式就不能使用了,而且nginx都可能啟動(dòng)不了,這是

因?yàn)樗鼈兌际怯昧?0這個(gè)端口。我們這里將nginx的端口修改為8080,

這里主要修改nginx的配置文件nginx.conf,將一下這一行

       listen 80;

    修改為

       listen 8080;

    然后就可以訪問了,http://localhost:8080/ 。

3.3 安裝php和MySQL

      $sudo apt-get install php5-cli php5-cgi mysql-server php5-mysql

3.4 測(cè)試nginx對(duì)php的支持

    (1)重新啟動(dòng)nginx:

      $/etc/init.d/nginx restart

    (2)啟動(dòng)fastcgi:

      $spawn-fcgi -a 127.0.0.1 -p 9000 -c 10 -u www-data -f /usr/bin/php-cgi

      spawn-fcgi啟動(dòng)出現(xiàn)錯(cuò)誤時(shí),查看php-cgi是否安裝,如果么有的話,安裝php5-cgi。

      $sudo apt-get install php5-cgi

    (3)測(cè)試

       打開http://localhost/phpinfo.php

4.nginx配置

     nginx的配置文件是/etc/nginx/nginx.conf,其中設(shè)置了一些必要的參數(shù),我們發(fā)現(xiàn)其中這樣的語句:

     include /etc/nginx/sites-enabled/*

     可以看出/etc/nginx/sites-enabled/default文件也是一個(gè)核心的配置文件,其中包含了主要的配置信息,

如服務(wù)器跟目錄、服務(wù)器名稱、location信息和server信息。

     對(duì)于源代碼安裝的nginx,配置文件為/usr/local/nginx/conf/nginx.conf。

    下面主要說明location的匹配規(guī)則:

   (1)= 前綴的指令嚴(yán)格匹配這個(gè)查詢。如果找到,停止搜索。

   (2)剩下的常規(guī)字符串,最長的匹配優(yōu)先使用。如果這個(gè)匹配使用 ^~ 前綴,搜索停止。

   (3)正則表達(dá)式,按配置文件里的順序,第一個(gè)匹配的被使用。

   (4)如果第三步產(chǎn)生匹配,則使用這個(gè)結(jié)果。否則使用第二步的匹配結(jié)果。

    在location中可以使用常規(guī)字符串和正則表達(dá)式。

    如果使用正則表達(dá)式,你必須使用以下規(guī)則:

       (1)~* 前綴選擇不區(qū)分大小寫的匹配

       (2)~  選擇區(qū)分大小寫的匹配

    例子:

     location = / {

# 只匹配 / 查詢。

[ configuration a ]
     }

location / {

# 匹配任何查詢,因?yàn)樗姓?qǐng)求都以 / 開頭。

            # 但是正則表達(dá)式規(guī)則和長的塊規(guī)則將被優(yōu)先和查詢匹配。

[ configuration b ]

}

location ^~ /images/ {

# 匹配任何以 /images/ 開頭的任何查詢并且停止搜索。

           # 任何正則表達(dá)式將不會(huì)被測(cè)試。

[ configuration c ]

}

location ~* \.(gif|jpg|jpeg)$ {

           # 匹配任何以 gif、jpg 或 jpeg 結(jié)尾的請(qǐng)求。

          # 然而所有 /images/ 目錄的請(qǐng)求將使用 configuration c。

    [ configuration d ]

}

到此,相信大家對(duì)“Ubuntu中Nginx怎么安裝與配置”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

網(wǎng)頁標(biāo)題:Ubuntu中Nginx怎么安裝與配置
當(dāng)前地址:http://muchs.cn/article46/ighchg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、搜索引擎優(yōu)化、靜態(tài)網(wǎng)站、網(wǎng)站制作定制開發(fā)、網(wǎng)站維護(hù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)