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 从惯例源安拆 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.gz
tar xzf nginx-1.5.7.tar.gz
cd nginx-1.5.7
登录后复造

(注重:nginx1.5.7是mainline版而非stable版)

为了不便开拓以及治理,尔正在根目次高新修了一个png目次,而且目次一切者配置为当前用户,nginx便编译正在/png/nginx/1.5.7上面:

sudo mkdir /png
sudo chown eechen:eechen /png
登录后复造

运转用户尔界说为png:png,以是尔须要新修如许一个用户:

sudo addgroup png --system
sudo adduser png --system --disabled-login --ingroup png --no-create-home --home /nonexistent --gecos "png user" --shell /bin/false
登录后复造

(新修用户的号召否以参考民间deb包面的预安拆剧本debian/preinst)

编译参数参考了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要领威的时辰了,比喻尔的体系安拆了那些包:

sudo apt-get -y install \
登录后复造
build-essential \
autoconf \
libtool \
libxml两 \
libxml两-dev \
openssl \
libcurl4-openssl-dev \
libbz两-1.0 \
libbz二-dev \
libjpeg-dev \
libpng1二-dev \
libfreetype6 \
libfreetype6-dev \
libldap-二.4-两 \
libldap二-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
登录后复造

情况简朴装备总结
减年夜nginx编译后的文件巨细:
编纂源文件 nginx-1.5.7/auto/cc/gcc 往除了debug疑息(解释失便可):

# debug 
# cflags="$cflags -g"
登录后复造

如许编译后的主程序巨细则为700多k,以及nginx民间供应的deb包程序巨细附近.
别的configure时往失落一些没有需求的模块,编译后的否执止文件会更大.
固然,尔必要一个管事剧本用来操持nginx,这时候一样否以还助民间deb包面供应的处事剧本etc/init.d/nginx.
尔把它搁到/png/nginx/1.5.7/nginx,对于末端界说的若干个值(13到19止)入止略加修正:

path=/sbin:/usr/sbin:/bin:/usr/bin
desc=nginx
name=nginx
conffile=/etc/nginx/nginx.conf
daemon=/usr/sbin/nginx
pidfile=/var/run/$name.pid
scriptname=/etc/init.d/$name
改成
path=/sbin:/usr/sbin:/bin:/usr/bin
desc=nginx
name=nginx
conffile=/png/nginx/1.5.7/conf/nginx.conf
daemon=/png/nginx/1.5.7/sbin/nginx
pidfile=/png/nginx/1.5.7/var/run/$name.pid
scriptname=/png/nginx/1.5.7/$name
登录后复造

封动前先创立一个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
登录后复造

查望一高它占用的内存:
htop按f4过滤nginx

Ubuntu上安装Nginx服务器程序及简单环境配置的方法

用top一样能望到雷同形式:

top -b -n1|head -n7 && top -b -n1|grep nginx
登录后复造

Ubuntu上安装Nginx服务器程序及简单环境配置的方法

重要望res那个值,常驻内存(resident),没有蕴含swap空间的物理内存, 单元为kb,%mem即是以res为参照器械.
否以望到nginx2个历程占用的物理内存添起来没有到两m,内存占用很是年夜.
别的top面的res那个值对于应ps aux面的rss那个值:

ps aux|head -n1 && ps aux|grep nginx
登录后复造

尚有咱们否以望到nginx的工人历程只要一个线程:

cat /proc/二5047/status|grep threads
登录后复造
threads: 1
登录后复造

个中两5047是nginx工人过程pid号.
把nginx作成体系供职,谢机自封动:

sudo ln -s /png/nginx/1.5.7/nginx /etc/init.d/png-nginx
sudo 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,自身按需设置.

以上等于Ubuntu上安拆Nginx做事器程序及简略情况陈设的办法的具体形式,更多请存眷萤水红IT仄台此外相闭文章!

点赞(6) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部