国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > Nginx > 正文

Ubuntu上安裝Nginx服務器程序及簡單的環(huán)境配置小結

2024-08-30 12:28:10
字體:
來源:轉載
供稿:網(wǎng)友

Ubuntu 從官方源安裝 Nginx

cd ~ wget http://nginx.org/keys/nginx_signing.key sudo apt-key add nginx_signing.key sudo nano /etc/apt/sources.list   # 添加以下兩句 deb http://nginx.org/packages/ubuntu/ precise nginx deb-src http://nginx.org/packages/ubuntu/ precise nginx sudo apt-get update sudo apt-get install nginx 

Ubuntu 從PPA源安裝 Nginx :

sudo add-apt-repository ppa:nginx/stable sudo apt-get update sudo apt-get install nginx 

Ubuntu 從常規(guī)源安裝 Nginx :

sudo apt-get install nginx 

編譯安裝Nginx

wget http://nginx.org/packages/mainline/ubuntu/pool/nginx/n/nginx/nginx_1.5.7-1~precise_i386.deb wget http://nginx.org/download/nginx-1.5.7.tar.gztar xzf nginx-1.5.7.tar.gzcd nginx-1.5.7

(注意:Nginx1.5.7是Mainline版而非Stable版)

為了方便開發(fā)和管理,我在根目錄下新建了一個png目錄,并且目錄所有者設置為當前用戶,nginx就編譯在/png/nginx/1.5.7下面:

sudo mkdir /pngsudo chown eechen:eechen /png

運行用戶我定義為png:png,所以我需要新建這樣一個用戶:

sudo addgroup png --systemsudo adduser png --system --disabled-login --ingroup png --no-create-home --home /nonexistent --gecos "png user" --shell /bin/false

(新建用戶的命令可以參考官方Deb包里的預安裝腳本DEBIAN/preinst)

編譯參數(shù)參考了Nginx官方提供的Deb包(nginx -V可見).

./configure /
--prefix=/png/nginx/1.5.7 /--sbin-path=/png/nginx/1.5.7/sbin/nginx /--conf-path=/png/nginx/1.5.7/conf/nginx.conf /--error-log-path=/png/nginx/1.5.7/var/log/error.log /--http-log-path=/png/nginx/1.5.7/var/log/access.log /--pid-path=/png/nginx/1.5.7/var/run/nginx.pid /--lock-path=/png/nginx/1.5.7/var/run/nginx.lock /--http-client-body-temp-path=/png/nginx/1.5.7/var/cache/client_temp /--http-proxy-temp-path=/png/nginx/1.5.7/var/cache/proxy_temp /--http-fastcgi-temp-path=/png/nginx/1.5.7/var/cache/fastcgi_temp /--http-uwsgi-temp-path=/png/nginx/1.5.7/var/cache/uwsgi_temp /--http-scgi-temp-path=/png/nginx/1.5.7/var/cache/scgi_temp /--user=png /--group=png /--with-http_ssl_module /--with-http_realip_module /--with-http_addition_module /--with-http_sub_module /--with-http_dav_module /--with-http_flv_module /--with-http_mp4_module /--with-http_gunzip_module /--with-http_gzip_static_module /--with-http_random_index_module /--with-http_secure_link_module /--with-http_stub_status_module /--with-mail /--with-mail_ssl_module /--with-file-aio /--with-ipv6

注意:這一步按錯誤提示安裝依賴的包,這時就是apt要發(fā)威的時候了,比如我的系統(tǒng)安裝了這些包:

sudo apt-get -y install /
build-essential /autoconf /libtool /libxml2 /libxml2-dev /openssl /libcurl4-openssl-dev /libbz2-1.0 /libbz2-dev /libjpeg-dev /libpng12-dev /libfreetype6 /libfreetype6-dev /libldap-2.4-2 /libldap2-dev /libmcrypt4 /libmcrypt-dev /libmysqlclient-dev /libxslt1.1 /libxslt1-dev /libxt-dev /libpcre3-dev

安裝好這些包后,下次編譯新版Nginx就不用再裝了,而且基本也滿足編譯PHP時configure的需求.
好了,configure成功后就可以編譯安裝了:

time make && make install

time主要用來查看本次編譯耗時.
編譯好后可以看看這個家伙的個頭:

du -sh /png/nginx/1.5.7/sbin/nginx 
5.5M /png/nginx/1.5.7/sbin/nginx 

環(huán)境簡單配置總結
減小Nginx編譯后的文件大小:
編輯源文件 nginx-1.5.7/auto/cc/gcc 去除Debug信息(注釋掉即可):

# debug # CFLAGS="$CFLAGS -g" 

這樣編譯后的主程序大小則為700多K,和Nginx官方提供的Deb包程序大小相近.
另外configure時去掉一些不需要的模塊,編譯后的可執(zhí)行文件會更小.
當然,我需要一個服務腳本用來管理Nginx,這時同樣可以借助官方Deb包里提供的服務腳本etc/init.d/nginx.
我把它放到/png/nginx/1.5.7/nginx,對開頭定義的幾個值(13到19行)進行稍加修改:

PATH=/sbin:/usr/sbin:/bin:/usr/binDESC=nginxNAME=nginxCONFFILE=/etc/nginx/nginx.confDAEMON=/usr/sbin/nginxPIDFILE=/var/run/$NAME.pidSCRIPTNAME=/etc/init.d/$NAME改為PATH=/sbin:/usr/sbin:/bin:/usr/binDESC=nginxNAME=nginxCONFFILE=/png/nginx/1.5.7/conf/nginx.confDAEMON=/png/nginx/1.5.7/sbin/nginxPIDFILE=/png/nginx/1.5.7/var/run/$NAME.pidSCRIPTNAME=/png/nginx/1.5.7/$NAME

啟動前先創(chuàng)建一個cache目錄,否則會提示出錯:

mkdir /png/nginx/1.5.7/var/cache

啟動Nginx:

sudo /png/nginx/1.5.7/nginx start

測試頁面:

curl -I `hostname`

看一下端口:

sudo netstat -antp|grep nginx

查看一下它占用的內(nèi)存:
htop按F4過濾nginx

Ubuntu,Nginx,安裝,配置,Nginx配置

用top同樣能看到類似內(nèi)容:

top -b -n1|head -n7 && top -b -n1|grep nginx 

Ubuntu,Nginx,安裝,配置,Nginx配置

主要看RES這個值,常駐內(nèi)存(resident),不包括SWAP空間的物理內(nèi)存, 單位為KB,%MEM就是以RES為參照對象.
可以看到Nginx兩個進程占用的物理內(nèi)存加起來不到2M,內(nèi)存占用非常小.
另外top里的RES這個值對應ps aux里的RSS這個值:

ps aux|head -n1 && ps aux|grep nginx 

還有我們可以看到Nginx的工人進程只有一個線程:

cat /proc/25047/status|grep Threads 
Threads: 1 

其中25047是Nginx工人進程PID號.
把Nginx做成系統(tǒng)服務,開機自啟動:

sudo ln -s /png/nginx/1.5.7/nginx /etc/init.d/png-nginxsudo update-rc.d png-nginx defaults #開機自啟動 sudo update-rc.d -f png-nginx remove # 以后不想開機自啟動可以這樣禁止sudo service png-nginx reload #這樣就可以用service來管理Nginx服務了,比如重載配置

最后,Nginx的主配置文件位于/png/nginx/1.5.7/conf/nginx.conf,自己按需配置.


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 深水埗区| 聊城市| 西城区| 尉氏县| 大安市| 鹤庆县| 独山县| 牟定县| 明水县| 青河县| 封丘县| 思茅市| 托里县| 广西| 金华市| 镇康县| 平江县| 上林县| 龙山县| 秭归县| 定陶县| 临漳县| 安陆市| 孟村| 卢氏县| 永泰县| 岳池县| 三都| 大余县| 平果县| 新乡县| 盈江县| 连平县| 宁明县| 福安市| 祁阳县| 萝北县| 冕宁县| 乐都县| 西青区| 龙井市|