环境:能联网的CentOS6.4
第一步:
下载安装包(用的是稳定版) 网址:http://nginx.org/en/download.html
第二步:
安装c++编译环境
切换到root用户命令行直接运行:yum install gcc-c++
第三步:
安装依赖库
(1)pcre库:yum install pcre*
(2)openssl库:yum install openssl*
(3)zlib库:yum install zlib*
第四步
安装Nginx
(1)在Linux系统的local文件夹下创建soft文件夹:mkdir -p /usr/local/soft
(2)修改soft文件夹权限,不然不能把安装包放过去,先切换到local文件夹下:cd /usr/local,修改soft文件夹权限 chmod 777 soft
(3)把下载好的Nginx安装包(nginx-1.16.1.tar.gz)放到上面创建好的soft文件夹下
(4)解压nginx-1.16.1.tar.gz:在soft文件夹下执行 tar -zxvf nginx-1.16.1.tar.gz
(5)解压后进入到源码目录cd nginx-1.16.1
(6)依次执行 ./configure→make→make install
第五步
开放80端口,访问Nginx要通过80端口
(1)打开iptables文件:vim /etc/sysconfig/iptables
(2)编辑iptables文件,新增红色箭头那行,直接从上面一行复制然后把22改成80
(2)重启iptables:service iptables restart
第六步
启动Nginx:/usr/local/nginx/sbin/nginx
打开浏览器输入localhost显示这个画面表示启动成功
在window下输入虚拟机IP也是显示这个画面表示启动成功(如果window下没进入这个画面则检查下80端口是否开放成功,在linux输入lsof -i:80)
有显示则代表开了80端口,如果什么都没显示代表端口没开放
还有一种情况,端口开放了,ngxin也打开了,在其他系统访问不到本机窗口,需要手动启动下80端口
命令行切换到root用户执行:/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
设置nginx开机启动
创建一个开机启动的脚本:
vim /etc/init.d/nginx
添加以下内容:
#!/bin/sh
#
# nginx - this script starts and stops the nginx daemon
#
# chkconfig: - 85 15
# description: NGINX is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /etc/nginx/nginx.conf
# config: /etc/sysconfig/nginx
# pidfile: /var/run/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/bin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/opt/nginx/conf/nginx.conf"
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx
make_dirs() {
# make required directories
user=`$nginx -V 2>&1 | grep "configure arguments:.*--user=" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
if [ -n "$user" ]; then
if [ -z "`grep $user /etc/passwd`" ]; then
useradd -M -s /bin/nologin $user
fi
options=`$nginx -V 2>&1 | grep 'configure arguments:'`
for opt in $options; do
if [ `echo $opt | grep '.*-temp-path'` ]; then
value=`echo $opt | cut -d "=" -f 2`
if [ ! -d "$value" ]; then
# echo "creating" $value
mkdir -p $value && chown -R $user $value
fi
fi
done
fi
}
start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
make_dirs
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
configtest || return $?
stop
sleep 1
start
}
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac
修改文件权限,并加入服务列表
# 修改权限 chmod 777 /etc/init.d/nginx # 添加到服务列表 chkconfig --add /etc/init.d/nginx
设置开机启动
chkconfig nginx on