一、什么是 Nginx ?
Nginx 與 Apache IIS 等軟件一樣,是一款服務器軟件,為 web 站點提供服務
除此之外,Nginx 還是一款反向代理服務器,我們可以利用 Nginx 實現負載均衡
所謂負載均衡是指為了減少服務器壓力,需要將用戶訪問信息引入內部不同的服務器,分擔服務器壓力
二、Nginx 與其他服務器對比
IIS:IIS 服務器只能運行在 Windows 上,效率遠不如 Linux 服務器
Tomcat :面向 java 語言,是一款重量級服務器
Apache : 目前應用最多的服務器軟件,穩定,開源,跨平臺,缺點是不支持高并發、rewrite 模塊強大
Nginx : 輕量級、支持高并發(支持 10 萬以上 TCP 連接)、部署簡單、內存消耗小、成本低、rewrite 模塊不夠強大
三、Nginx 服務器搭建
1.安裝環境 Ubuntu16.04
通過 apt-get 安裝
sudo apt-get install nginx
2.然后安裝 PHPFastCGI 管理器?php7.0-fpm
sudo apt-get install php-fpm
? ?3.安裝完成后配置 nginx?
vim /etc/ngnix/sites-avaiable/default
4.配置監聽端口:
listen 8080 default_server; #IPV4端口
listen [::]:8080 default_server; #IPV6端口
5.配置 WEB 根站點目錄
root /var/www/nginx/;
6.配置 nginx 與 php:
nginx 與 fastcgi 通信有 2 種方式:socket 和 TCP
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.0-fpm.sock; #設置socket方式
}
7.重啟 ngnix
service nginx restart
8.測試配置文件是否生效
/usr/sbin/nginx -t
9.改 php-fpm 配置文件
sudo vim /etc/php/7.0/fpm/pool.d/www.conf
; The address on which to accept FastCGI requests.
; Valid syntaxes are:
; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific IPv4 address on
; a specific port;
; '[ip:6:addr:ess]:port' - to listen on a TCP socket to a specific IPv6 address on
; a specific port;
; 'port' - to listen on a TCP socket to all addresses
; (IPv6 and IPv4-mapped) on a specific port;
; '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
listen = /run/php/php7.0-fpm.sock #與nginx配置文件中保持一致
10.重啟 php-fpm
service php7.0-fpm restart
11.測試配置文件是否生效
php-fpm7.0 -t
? ? ? 12.至此就完成了 nginx 和 PHP 的搭建
注意:當 apache 和 nginx 安裝在同一臺主機上時需要修改各自的監聽端口,避免沖突
apache:
vim /etc/apache2/ports.conf
ginx:
vim /etc/nginx/sites-avaiable/default