如何在CentOS 7上从源代码安装nginx

时间:2019-08-20 17:58:23  来源:igfitidea点击:

在CentOS 7上通过源代码安装Nginx的步骤

安装EPEL repo

rpm -ivh http://dl.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm

安装必备软件包

安装Nginx所需的必备软件包

yum install gc gcc gcc-c++ pcre-devel zlib-devel make wget openssl-devel libxml2-devel libxslt-devel gd-devel perl-ExtUtils-Embed GeoIP-devel gperftools gperftools-devel libatomic_ops-devel perl-ExtUtils-Embed

下载Nginx源代码

从nginx网站下载最新的nginx源代码
我们建议始终使用稳定的最新版本。

wget nginx.org/download/nginx-1.6.0.tar.gz

创建nginx用户

此用户将由Nginx Web服务器使用。

useradd nginx
usermod -s /sbin/nologin nginx

编译安装Nginx

首先,解压下载的Nginx源代码包

tar -xvzf nginx-1.6.0.tar.gz

查看编译可用的选项及其详细信息。

cd nginx-1.6.0
./configure --help

在编译Nginx时启用一些模块。

./configure --user=nginx --group=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 --with-rtsig_module --with-select_module --with-poll_module --with-file-aio --with-ipv6 --with-http_ssl_module --with-http_spdy_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_image_filter_module --with-http_geoip_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_auth_request_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_stub_status_module --with-http_perl_module --with-mail --with-mail_ssl_module --with-cpp_test_module  --with-cpu-opt=CPU --with-pcre  --with-pcre-jit  --with-md5-asm  --with-sha1-asm  --with-zlib-asm=CPU --with-libatomic --with-debug --with-ld-opt="-Wl,-E"

安装:

make && make install

启动Nginx服务

使用下面的命令启动nginx服务

/usr/sbin/nginx -c /etc/nginx/nginx.conf

检查Nginx的状态

查看Nginx的进程

ps -ef|grep nginx

停止Nginx

ps-ef | grep nginx
kill -9 nginx的进程

为Nginx添加iptables规则

默认情况下nginx将运行在端口号80上

临时添加iptable规则

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

永久添加HTTP的iptable规则

编辑文件/etc/sysconfig/iptables

vi /etc/sysconfig/iptables

添加下面的规则

-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

重新启动iptables服务

systemctl restart iptables

检查所有应用的iptables规则列表

iptables -nL

访问网站

在浏览器中打开 http://服务器ip访问nginx站点。