溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

nginx網(wǎng)站服務于虛擬主機

發(fā)布時間:2020-07-20 16:29:07 來源:網(wǎng)絡 閱讀:5086 作者:tty之星 欄目:數(shù)據(jù)庫

   Nginx網(wǎng)站服務于虛擬主機

1nginx的優(yōu)點:

穩(wěn)定性高

系統(tǒng)資源消耗低

http并發(fā)量處理能力好可支持30000-50000個并發(fā)請求

主要用于靜態(tài)頁面

以線程為單位,一個進程對應多個用戶,(線程很少占用系統(tǒng)資源)

2:與Apache的對比:

Apache主要用于動態(tài)頁面

支持功能多

穩(wěn)定性能高

Apache以進程為單位,一個用戶對應一個進程(一對一)

3nginx主要用于:電商,網(wǎng)站,社交,門戶......

4:安裝及控制nginx

 

1.安裝支持軟件

[root@centos1 ~]# yum -y install pcre-devel zlib-devel

nginx網(wǎng)站服務于虛擬主機 

2.創(chuàng)建運行用戶、組

[root@centos1 ~]# useradd -M -s /sbin/nologin nginx

nginx網(wǎng)站服務于虛擬主機 

3.編譯安裝nginx

啟用狀態(tài)統(tǒng)計模塊以支持狀態(tài)統(tǒng)計,便于查看服務器的連接信息

[root@centos1 nginx-1.6.2]# ./configure --prefix=/usr/local/nginx  --user=nginx  --group=nginx  --with-http_stub_status_module狀態(tài)統(tǒng)計模塊

nginx網(wǎng)站服務于虛擬主機 

 

[root@centos1 nginx-1.6.2]# make&&make install

nginx網(wǎng)站服務于虛擬主機 

4.添加符號鏈接,以便通過nginx命令就可以調用nginx的主程序

[root@centos1 nginx-1.6.2]# ln -s /usr/local/nginx/sbin/nginx  /usr/local/sbin

 

 

nginx網(wǎng)站服務于虛擬主機 

nginx網(wǎng)站服務于虛擬主機 

2.啟動和停止nginx

[root@centos1 nginx-1.6.2]# nginx

3.檢查nginx的監(jiān)聽端口,或通過瀏覽器訪問

[root@centos1 nginx-1.6.2]# netstat -anpt

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   

tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      

nginx網(wǎng)站服務于虛擬主機 

3.重新加載nginx

[root@centos1 nginx-1.6.2]# killall -s HUP nginx

4.退出nginx

[root@centos1 nginx-1.6.2]# killall -s QUIT  nginx

nginx網(wǎng)站服務于虛擬主機 

三、了解nginx的配置文件nginx.conf

說明:nginx.conf文件包含三部分配置,分別是全局配置、I/O事件配置和HTTP配置

1.全局配置

#user  nobody;  //運行用戶 默認為nobody

worker_processes  1; //工作的進程數(shù)量,可以根據(jù)cpu核心總數(shù)來指定工作進程數(shù)

#error_log  logs/error.log;//錯誤日志文件的位置

#pid        logs/nginx.pid; //PID文件的位置

nginx網(wǎng)站服務于虛擬主機 

2.I/O事件配置

events {

    use epoll  //使用epoll模型

    worker_connections  4096;每個進程處理4096個進程連接

}

nginx服務提供的連接數(shù)為工作的進程數(shù)x每個進程提供的連接數(shù)

3.HTTP配置,用于完成web站點的設置

http {

    include       mime.types;

    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ' //去掉前面的#

                      '$status $body_bytes_sent "$http_referer" ' //去掉前面的#

                      '"$http_user_agent""$http_x_forwarded_for"'; //去掉前面的#

 

    access_log  logs/access.log  main; //去掉前面的#

    sendfile        on;

    #tcp_nopush     on;

    #keepalive_timeout  0;

    keepalive_timeout  65;

    #gzip  on;

 server {

        listen       80;

        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {

            root   html;

            index  index.html index.htm;

        }

location / status{   //訪問位置為/status

stub_status on;//打開狀態(tài)統(tǒng)計功能

access_log off;//關閉此位置的日志記錄

        }

 

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html

        #

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

            }

4.修改完配置文件后,重新加載下配置文件

[root@centos1 nginx-1.6.2]# killall -s HUP nginx

nginx網(wǎng)站服務于虛擬主機 

四、構建基于域名的虛擬web主機

1.準備網(wǎng)站目錄以及測試文件

[root@centos1 nginx-1.6.2]# mkdir -p /var/www/benet

[root@centos1 nginx-1.6.2]# echo "<h2>www.benet.com</h2>">/var/www/benet/index.html

[root@centos1 nginx-1.6.2]# mkdir -p /var/www/accp

2.[root@centos1 nginx-1.6.2]# echo "<h2>www.accp.com</h2>">/var/www/accp/index.html

nginx網(wǎng)站服務于虛擬主機 

虛擬主機配置在server{}區(qū)域中,每個server{}區(qū)域代表一個web站點配置,指定各自網(wǎng)站名稱、監(jiān)聽地址、網(wǎng)站根目錄、訪問日志等信息,然后重新加載配置

省略部分內容

 {

server {

        listen       80;

        server_name  www.benet.com;

        charset utf-8;

        access_log  logs/benet.access.log  main;

        location / {

            root   /var/www/benet;

            index  index.html index.htm;

        }

        location /status {

            stub_status on;

            access_log off;

        }

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

}

server {

        listen       80;

        server_name  www.accp.com;

        charset utf-8;

        access_log  logs/accp.access.log  main;

        location / {

            root   /var/www/accp;

            index  index.html index.htm;

        }

        location /status {

            stub_status on;

            access_log offm;

        }

       error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

}

}

nginx網(wǎng)站服務于虛擬主機 

3.重新加載

[root@centos1 nginx-1.6.2]# killall -s QUIT nginx

[root@centos1 nginx-1.6.2]# nginx

4.測試

nginx網(wǎng)站服務于虛擬主機nginx網(wǎng)站服務于虛擬主機 

五、構建LNMP架構及應用部署

1.安裝mysql數(shù)據(jù)庫(,直接啟動mysql服務器)

2.安裝php解析環(huán)境

說明:較新保本(如5.3php已經(jīng)自帶FPM(fastCGI Process Manager FastCGI進程管理器)模塊,用來對php解析實例進行管理、優(yōu)化解析效率。需要啟用--enable-fpm以啟用此模塊

1)編譯安裝php

[root@centos1 ~]# yum -y install gd libxml2-devel  libjpeg-devel libpng-devel

 

[root@centos1~]#cd /usr/src/php-5.3.28

[root@centos1 php-5.3.28]# ./configure --prefix=/usr/local/php5 --with-gd --with-zlib --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5 --enable-mbstring --enable-fpm --with-jpeg-dir=/usr/lib

 nginx網(wǎng)站服務于虛擬主機

[root@centos1 php-5.3.28]#make &&make install

nginx網(wǎng)站服務于虛擬主機 

(2)安裝后的調整

[root@centos1 php-5.3.28]# cp php.ini-development /usr/local/php5/php.ini

[root@centos1 php-5.3.28]# ln -s /usr/local/php5/bin/* /usr/local/bin

[root@centos1 php-5.3.28]# ln -s /usr/local/php5/sbin/* /usr/local/sbin

[root@centos1 php-5.3.28]#

nginx網(wǎng)站服務于虛擬主機 

3.配置nginx支持php環(huán)境

有兩種讓nginx支持php的方法

充當中介,將訪問php頁面的web請求轉交給其他的服務器(lamp)去處理

通過使用phpFPM模塊來調用本機的php環(huán)境

1)啟用php-fpm進程

[root@centos1 vod]# useradd -M -s /sbin/nologin php

nginx網(wǎng)站服務于虛擬主機 

①修改php-fpm.conf配置文件修改相關參數(shù),然后啟動php-fpm進程,php-fpm默認監(jiān)聽本機的9000端口

pid = run/php-fpm.pid   //確認pid文件的位置

user = php               //運行用戶

group = php//運行組

pm.start_servers = 20//啟動時開啟的進程數(shù)

pm.min_spare_servers = 5//最小空閑進程數(shù)

pm.max_spare_servers = 35  //最大空閑進程數(shù)

pm.max_children = 50//最大子進程數(shù)

 

②啟動php-fpm

[root@centos1 etc]# /usr/local/sbin/php-fpm

2)配置nginx:完全支持php解析

說明:無論使用哪一種解析方式都需要server中進行配置

nginx網(wǎng)站服務于虛擬主機 

[root@centos1 Desktop]# vim /usr/local/nginx/conf/nginx.conf

..........

    server {

        listen       80;

        server_name  www.lxf.com;

        charset utf-8;

        access_log  logs/vod.access.log  main;

       location / {

           root   /var/www/lxf;

            index index.html index.php;

        }

       location ~ \.php$ {//訪問.php頁面的配置段

           root   /var/www/lxf;//php頁面的根目錄

            fastcgi_pass 127.0.0.1:9000;     //php-fpm監(jiān)聽地址

           fastcgi_index index.php;//php首頁名稱

          include fastcgi.conf;//fastcgi模塊配置

        }

}

}

nginx網(wǎng)站服務于虛擬主機 

 

[root@centos1 vod]# killall -s QUIT nginx

[root@centos1 vod]# nginx

 

 

 

3php頁面訪問測試

[root@centos1 vod]# mysqladmin -u root -p password '123456'

#service mysqld start  //啟動數(shù)據(jù)庫

/var/www/lxf下創(chuàng)建一個測試頁面test.php

vim  /var/www/lxf/test.php

<?php

$link=mysql_connect('localhost','root','pwd123');

if ($link) echo "<h2>恭喜你,數(shù)據(jù)庫連接成功</h2>";

mysql_close();

?>

nginx網(wǎng)站服務于虛擬主機 

驗證:nginx網(wǎng)站服務于虛擬主機

六、LNMP平臺的應用--部署天空網(wǎng)絡電影系統(tǒng)

1.下載并部署程序代碼

[root@centos1 ~]# unzip SKYUC_3.4.2_for_php5.3.zip -d /usr/src

[root@centos1 ~]# cd /usr/src/SKYUC.v3.4.2.SOURCE/

[root@centos1 SKYUC.v3.4.2.SOURCE]# mv wwwroot/ /var/www/lxf/skyuc

[root@centos1 SKYUC.v3.4.2.SOURCE]# cd /var/www/vlxf/skyuc/

[root@centos1 skyuc]# chown -R php:php admincp/ data/ templates/ upload/

[root@centos1 skyuc]#

nginx網(wǎng)站服務于虛擬主機 

nginx網(wǎng)站服務于虛擬主機

2.創(chuàng)建數(shù)據(jù)庫

為了降低web應用程序對數(shù)據(jù)庫的風險,建議設置專用的數(shù)據(jù)庫以及授權用戶[root@centos1 skyuc]# mysql -u root -p

mysql> create database skyucdb;

mysql> grant all on skyucdb.* to runskyuc@localhost identified by 'sky@uc123';

nginx網(wǎng)站服務于虛擬主機nginx網(wǎng)站服務于虛擬主機 

 

驗證:

nginx網(wǎng)站服務于虛擬主機 

nginx網(wǎng)站服務于虛擬主機 

nginx網(wǎng)站服務于虛擬主機 


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI