一、安装Jemalloc

只安装Nginx可以直接跳过这一步。

// 进入默认的软件目录
cd /usr/local/src/

// 下载安装包
wget -c https://github.com/jemalloc/jemalloc/releases/download/4.5.0/jemalloc-4.5.0.tar.bz2
tar xjf jemalloc-4.5.0.tar.bz2
cd jemalloc-4.5.0

// 安装配置 
./configure
make && make install
echo '/usr/local/lib' > /etc/ld.so.conf.d/local.conf
ldconfig

二、准备工作

主要是安装必须的依赖包和创建用户。

// 安装依赖
yum -y install gcc gcc-c++ wget automake autoconf libtool libxml2-devel libxslt-devel perl-devel perl-ExtUtils-Embed pcre-devel openssl-devel

// 创建目录和用户
mkdir -p /var/cache/nginx
groupadd www
useradd -g www www -s /bin/false

三、下载并解压Nginx

软件还是下载至相同目录,便于管理。

// 进入默认的软件目录
cd /usr/local/src/

// 下载 nginx软件
wget http://nginx.org/download/nginx-1.10.1.tar.gz

// 然后解压文件.
tar zxvf nginx-1.10.1.tar.gz

// 进入nginx-1.10.1.tar.gz的源码目录
cd nginx-1.10.1

四、configure

不安装Jemalloc的请去掉最后一项。

// 开始configure
./configure \
--prefix=/usr/local/nginx \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/run/nginx.lock \
--http-client-body-temp-path=/var/cache/nginx/client_temp \
--http-proxy-temp-path=/var/cache/nginx/proxy_temp \
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp \
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp \
--http-scgi-temp-path=/var/cache/nginx/scgi_temp \
--user=www \
--group=www \
--with-pcre \
--with-http_v2_module \
--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-http_auth_request_module \
--with-mail \
--with-mail_ssl_module \
--with-file-aio \
--with-ipv6 \
--with-threads \
--with-stream \
--with-stream_ssl_module \
--with-ld-opt="-ljemalloc" \

五、编译安装

// 编译
make

// 安装
make install

// 启动nginx
/usr/sbin/nginx

// 用ps aux来查看nginx是否启动
ps aux|grep nginx

六、配置systemctl进行Nginx服务管理

CentOS 7已经不再使用service进行服务管理了,需要自己添加个配置。

// 配置服务
vim /usr/lib/systemd/system/nginx.service

// 输入以下内容
[Unit]
Description=nginx - high performance web server 
Documentation=http://nginx.org/en/docs/
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

七、设置开机启动

尝试systemctl进行管理。

// 开启开机启动
systemctl enable nginx.service

// 关掉nginx
pkill -9 nginx

// 用systemctl来操作nginx.service
systemctl start nginx

// 设置网站目录所有者和所属的组
chown www:www /usr/local/nginx/html/ -R

搞定,嗯,编译安装就是这么简单!

标签: Jemalloc, Nginx, CentOS

仅有一条评论

  1. 李斯特 李斯特

    别的教程安装老是不行,照着你这个半小时不到就安装好了

添加新评论