首頁 運維 Nginx Ubuntu下Nginx如何安裝與配置

Ubuntu下Nginx如何安裝與配置

May 17, 2023 am 11:01 AM
nginx ubuntu

1.nginx介紹

     nginx是一個非常輕量級的http伺服器,nginx,它的發音為“engine x”, 是一個高效能的http和

反向代理伺服器,同時也是一個imap/pop3/smtp 代理伺服器。

2.對php支援

     目前各種web 伺服器對php的支援一共有三種:

   (1)透過web 伺服器內置的模組來實現,例如apache的mod_php5,類似的apache內建的mod_perl

可以對perl支援。

  (2)透過cgi來實現,這個就好比之前perl的cgi,該種方式的缺點是效能差,因為每次伺服器遇到

這些腳本都需要重新啟動腳本解析器來執行腳本然後將結果回傳給伺服器;

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

   (3)最新出現一種叫做fastcgi。所謂fastcgi就是對cgi的改良。它一般採用c/s結構,一般腳本處理器

會啟動一個或多個daemon進程,每次web 伺服器遇到腳本的時候,直接交付給fastcgi的進程來執行,然後

將得到的結果(通常為html)傳回瀏覽器。

2.1 apache mod_php模式

     我們很長一段時間使用經典的apache mod_php。

     apache對php的支援是透過apache的模組來支援的。如果從原始碼編譯安裝php的話,如果希望apache支援

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

apache的mod_php5/apxs來提供對php5的解析;而且在最後一步make install的時候我們會看到將動態連結函式庫

libphp5.so拷貝到apache2的安裝目錄的modules目錄下,也需要在httpd.conf設定檔中加入loadmodule

語句來動態將libphp5.so模組載入進來,從而實現apache對php的支援。

2.2 nginx fastcgi模式

     nginx完全是輕量級的,必須藉助第三方的fastcgi處理器才可以對php進行解析,因此其實這樣看來nginx是

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

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

現在出現了新的第三方的php的fastcgi處理器,叫做php-fpm,可以了解一下。本文是基於spawn-fcgi實作對

php模組的支援。

2.3 安裝fastcgi

      /usr/bin/spawn-fcgi這個檔案來管理fastcgi,它原屬於lighttpd這個包裡面,但9.10 後,spawn-fcgi

被分離出來單獨成包。

  (1)使用apt-get線上安裝指令如下:

         $sudo apt-get install spawn-fcgi

  (2)原始碼安裝如下,下載位址為:

         解壓縮以後,進入目錄下執行以下安裝指令:

         $./configure

   ##        安裝之後,spawn-fcgi指令就可以直接使用了,它的可執行檔在/usr/local/bin/spawn-fcgi。

3.nginx安裝

##3.1 安裝nginx

    (1)線上安裝

       apt-get install nginx

      nginx的版本是1.2.1

      ubuntu安裝nginx之後的檔案結構大致為:

#o#  #  下,並且每個虛擬主機已經安排在了/etc/nginx/sites-available下

      啟動程式檔案在/usr/sbin/nginx

     /nginx中,分別是access.log和error.log

      並且已經在/etc/init.d/下創建了啟動腳本nginx

      預設的虛擬主機的目錄設定在了/usr/share/nginx/www

    (2)原始碼安裝

      下載位址:

      我這裡下載的是nginxtar.1.3.9.##      我這裡下載的是nginxtar.1.3.9.##      我這裡下載的是nginxtar.安裝過程很簡單,如下:

      $./configure

      $make

      $make install

      安裝成功之後,nginx放置在/usr/local/nginx目錄下,主要的設定檔為conf目錄下的nginx.conf,

nginx的啟動檔案在sbin目錄下的nginx檔案。

3.2 啟動nginx

  (1)線上安裝的啟動過程

      $sudo /etc/init.d/nginx start

#   (2)原始碼安裝的啟動過程

      $cd /usr/local/nginx

#    $sbin/nginx

#  /localhost/ , 一切正常!如果不能訪問,先不要繼續,看看是什麼原因,

解決之後再繼續。

      如果你的機器同時安裝了apache,那麼上面的存取方式就不能使用了,而且nginx都可能啟動不了,這是

因為它們都是用了80這個連接埠。我們在這裡將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


########################################################11 3.4 測試nginx對php的支援########   (1)重新啟動nginx:######      $/etc/init.d/nginx restart######    $/etc/init.d/nginx restart######   (2)啟動啟動:######      $spawn-fcgi -a 127.0.0.1 -p 9000 -c 10 -u www-data -f /usr/bin/php-cgi######      spawn-fcgi啟動出現時錯誤,查看php-cgi是否安裝,如果麼有的話,安裝php5-cgi。 ######      $sudo apt-get install php5-cgi######   (3)測試######      開啟 http 4.nginx設定#########     nginx的設定檔是/etc/nginx/nginx.conf,其中設定了一些必要的參數,我們發現其中這樣的語句:######     include / etc/nginx/sites-enabled/*######     可以看出/etc/nginx/sites-enabled/default檔案也是一個核心的配置文件,其中包含了主要的配置信息,######如伺服器跟目錄、伺服器名稱、location資訊和server資訊。 ######     對於原始程式碼安裝的nginx,設定檔為/usr/local/nginx/conf/nginx.conf。 ######    以下主要說明location的符合規則:######   (1)= 前綴的指令嚴格符合這個查詢。如果找到,停止搜尋。 ######   (2)剩餘的常規字串,最長的符合優先使用。如果這個匹配使用 ^~ 前綴,搜尋停止。 ######   (3)正規表示式,依照設定檔裡的順序,第一個符合的被使用。 ######   (4)如果第三步產生匹配,則使用這個結果。否則使用第二步的匹配結果。 ######    在location中可以使用常規字串和正規表示式。 ######    如果使用正規表示式,你必須使用下列規則:######      (1)~* 字首選擇不區分大小寫的符合######      (2)為寫入的符合 ######    範例:######     location = / {######    # 只符合/ 查詢。 ######    [ configuration a ]###     }######  location / {#######    # 符合任何查詢,因為所有請求都以 / 開頭。 ######            # 但以正規表示式規則與長的區塊規則將會優先與查詢來配對。 ######    [ configuration b ]######  }######  location ^~ /images/ {######    # 匹配任何以/images/ {######    # 匹配任何以/images/ {######    # 匹配任何以/images/ 開頭的任何查詢並且停止搜尋。 ######           # 任何正規表示式則不會被測試。 ######    [ configuration c ]######  }######  location ~* \.((gif|jpg|jpeg)$ {#####    或jpeg 結尾的請求。 ######          # 然而所有 /images/ 目錄的請求將會使用 configuration c。 ######    [ configuration d ]######  }####

以上是Ubuntu下Nginx如何安裝與配置的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

docker容器名稱怎麼查 docker容器名稱怎麼查 Apr 15, 2025 pm 12:21 PM

可以通過以下步驟查詢 Docker 容器名稱:列出所有容器(docker ps)。篩選容器列表(使用 grep 命令)。獲取容器名稱(位於 "NAMES" 列中)。

nginx在windows中怎麼配置 nginx在windows中怎麼配置 Apr 14, 2025 pm 12:57 PM

如何在 Windows 中配置 Nginx?安裝 Nginx 並創建虛擬主機配置。修改主配置文件並包含虛擬主機配置。啟動或重新加載 Nginx。測試配置並查看網站。選擇性啟用 SSL 並配置 SSL 證書。選擇性設置防火牆允許 80 和 443 端口流量。

怎麼查看nginx是否啟動 怎麼查看nginx是否啟動 Apr 14, 2025 pm 01:03 PM

確認 Nginx 是否啟動的方法:1. 使用命令行:systemctl status nginx(Linux/Unix)、netstat -ano | findstr 80(Windows);2. 檢查端口 80 是否開放;3. 查看系統日誌中 Nginx 啟動消息;4. 使用第三方工具,如 Nagios、Zabbix、Icinga。

nginx怎麼配置雲服務器域名 nginx怎麼配置雲服務器域名 Apr 14, 2025 pm 12:18 PM

在雲服務器上配置 Nginx 域名的方法:創建 A 記錄,指向雲服務器的公共 IP 地址。在 Nginx 配置文件中添加虛擬主機塊,指定偵聽端口、域名和網站根目錄。重啟 Nginx 以應用更改。訪問域名測試配置。其他注意事項:安裝 SSL 證書啟用 HTTPS、確保防火牆允許 80 端口流量、等待 DNS 解析生效。

docker怎麼啟動容器 docker怎麼啟動容器 Apr 15, 2025 pm 12:27 PM

Docker 容器啟動步驟:拉取容器鏡像:運行 "docker pull [鏡像名稱]"。創建容器:使用 "docker create [選項] [鏡像名稱] [命令和參數]"。啟動容器:執行 "docker start [容器名稱或 ID]"。檢查容器狀態:通過 "docker ps" 驗證容器是否正在運行。

nginx怎麼查版本 nginx怎麼查版本 Apr 14, 2025 am 11:57 AM

可以查詢 Nginx 版本的方法有:使用 nginx -v 命令;查看 nginx.conf 文件中的 version 指令;打開 Nginx 錯誤頁,查看頁面的標題。

docker怎麼創建容器 docker怎麼創建容器 Apr 15, 2025 pm 12:18 PM

在 Docker 中創建容器: 1. 拉取鏡像: docker pull [鏡像名] 2. 創建容器: docker run [選項] [鏡像名] [命令] 3. 啟動容器: docker start [容器名]

怎麼啟動nginx服務器 怎麼啟動nginx服務器 Apr 14, 2025 pm 12:27 PM

啟動 Nginx 服務器需要按照不同操作系統採取不同的步驟:Linux/Unix 系統:安裝 Nginx 軟件包(例如使用 apt-get 或 yum)。使用 systemctl 啟動 Nginx 服務(例如 sudo systemctl start nginx)。 Windows 系統:下載並安裝 Windows 二進製文件。使用 nginx.exe 可執行文件啟動 Nginx(例如 nginx.exe -c conf\nginx.conf)。無論使用哪種操作系統,您都可以通過訪問服務器 IP

See all articles