ubuntu安裝nginx及其默認目錄結構


一. 安裝包安裝

1.1 安裝Nginx

$sudo apt-get install nginx

Ubuntu安裝之后的文件結構大致為:

  • 所有的配置文件都在/etc/nginx下,並且每個虛擬主機已經安排在了/etc/nginx/sites-available下
  • 程序文件在/usr/sbin/nginx
  • 日志放在了/var/log/nginx中
  • 並已經在/etc/init.d/下創建了啟動腳本nginx
  • 默認的虛擬主機的目錄設置在了/var/www/nginx-default (有的版本 默認的虛擬主機的目錄設置在了/var/www, 請參考/etc/nginx/sites-available里的配置)

1.2 啟動Nginx

$sudo /etc/init.d/nginx start

然后就可以訪問了,http://localhost/ , 一切正常!
如果不能訪問,先不要繼續,看看是什么原因,解決之后再繼續。
啟動時候若顯示端口80被占用: Starting nginx: [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use),修改文件:/etc/nginx/sites-available/default,去掉 listen 前面的 # 號 , # 號在該文件里是注釋的意思 , 並且把 listen 后面的 80 端口號改為自己的端口,訪問是需要添加端口號。(安裝完后如出現403錯誤,那可能是nginx配置文件里的網站路徑不正確)

1.3 Nginx與PHP-FPM集成

PHP-FPM 與 Nginx 通信方式有兩種,一種是基於TCP的 Internet domain socket 方式,一種是 UNIX domain socket 方式。

UNIX domain socket 可以使同一台操作系統上的兩個或多個進程進行數據通信。UNIX domain socket 的接口和 Internet domain socket 很像,但它不使用網絡底層協議來通信。

服務器壓力不大的情況下,這兩種方式性能差別不大,但在壓力比較滿的時候,用UNIX domain socket方式,效果確實比較好。

UNIX domain socket 方式:

在 /etc/nginx/sites-available/default 配置文件中(網站根目錄也在是這里更改), Nginx已經為與 PHP-FPM的整合准備好了,只要吧注釋去掉即可,只需要將下面這部分改好就可以了。sock文件路徑為 /run/php/php7.1-fpm.sock 。(視安裝php版本而定)

location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        # With php7.0-cgi alone:
        # fastcgi_pass 127.0.0.1:9000;
        # With php7.0-fpm:
        fastcgi_pass unix:/run/php/php7.1-fpm.sock;
    }

然后再修改 PHP-FPM的配置文件 /etc/php/7.1/fpm/pool.d 
,如下:

;  與 Nginx監聽同一個 sock
listen = /run/php/php7.1-fpm.sock

配置好后重啟服務:

sudo /etc/init.d/nginx restart 
sudo /etc/init.d/php7.1-fpm restart


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM