本教程由阿里云公开课内容整理。
下载nginx依赖包
开源软件往往要依赖第三方组件,nginx也不例外。
如果是centos或者redhat发行版本的linux系统,在命令行输入
#yum -y install openssl openssl-devel pcre pcre-devel
yum
是centos/redhat的软件安装命令,-y
选项表示你就不用输入y
确认了。openssl,openssl-devel这些包具体作用请谷歌。
建立用户组与用户
为什么要另外创建用户呢?一般软件会默认当前登录用户为所有者,这样不安全,容易被攻破。
#groupadd www
#useradd -g www -s /sbin/nologin www
创建了名为www的用户组及用户,并限制该用户登录,只能作为进程访问授权
下载nginx
wget下载
wget http://oss.aliyuncs.com/aliyunecs/onekey/nginx/nginx-1.4.4.tar.gz
(这是阿里云ecs才能用的地址)
或者
wget http://nginx.org/download/nginx-1.8.1.tar.gz
(这个直接从nginx官网下载,版本是1.8.1,自己不喜欢可以换)
解压
tar -zxvf nginx-1.4.4.tar.gz
tar是解压命令
然后到解压之后的目录下
cd nginx-1.4.4
cd命令详解
编译安装nginx
先想好要安装在哪里,不如专门搞一个目录放这些建站环境软件
mkdir -p /usr/local/server
mkdir命令详解
然后跳转到刚才目录cd -
编译前配置
./configure --user=www --group=www --prefix=/usr/local/server/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module
./configure
是在安装前对软件进行配置,–user用户 –group用户组 –prefix安装位置,–with启用模块
编译
make
出现错误的话很可能是你没安装gcc
yum -y install gcc
安装gcc之后再make
编译
安装
make install
安装完毕!
配置nginx
设置日志目录的访问权限
linux中权限十分重要,在这里先不展开
chmod 775 /usr/local/server/nginx/logs
chmod
是文件改变权限
chown -R www:www /usr/local/server/nginx/logs
chown
是改变所有者
设置 Web 程序目录的访问权限
#mkdir /usr/local/server/web
#chmod 775 /usr/local/server/web
#chown -R www:www /usr/local/server/web
设置 nginx 程序执行权限
#chmod 775 /usr/local/server/nginx/sbin/nginx
创建 nginx 服务
vim /etc/init.d/nginx
vim
是linux中文件修改命令,文件不存在时自动创建。
/etc/init.d 目录通常是放置服务程序的目录,服务程序的
作用是可以在计算机启动时自动启动。
按一下i键粘贴下面内容
#!/bin/bash
# nginx Startup script for the Nginx HTTP Server
nginxd=/usr/local/server/nginx/sbin/nginx nginx_config=/usr/local/server/nginx/conf/nginx.conf nginx_pid=/usr/local/server/nginx/logs/nginx.pid
RETVAL=0
prog="nginx"
[ -x $nginxd ] || exit 0
# Start nginx daemons functions.
start() {
if [ -e $nginx_pid ] && netstat -tunpl | grep nginx &> /dev/null;then
echo "nginx already running...."
exit 1
fi
echo -n $"Starting $prog!"
$nginxd -c ${nginx_config} RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/nginx
return $RETVAL
}
# Stop nginx daemons functions.
stop() {
echo -n $"Stopping $prog!"
$nginxd -s stop RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/nginx
}
# reload nginx service functions.
reload() {
echo -n $"Reloading $prog!"
#kill -HUP `cat ${nginx_pid}`
$nginxd -s reload RETVAL=$?
echo
}
# See how we were called. case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
stop
start
;;
*)
echo $"Usage: $prog {start|stop|restart|reload|help}"
exit 1
esac
exit $RETVAL
这是shell脚本
按esc,输入:wq
退出
然后为该文件设置权限
chmod 775 /etc/init.d/nginx
接下来工作需要先等php安装完毕。