想买个服务器很久了,可惜一直不好意思入手。前两天逛阿里云的时候看到一个云翼项目,就赶紧买了一年。ECS没事干就好了。阿里云翼计划不废话,下面开始准备工作吧。我使用的一台服务器是阿里云centos7xshell。其他人也可以使用linux来操作nginx和configure。我们将在一段时间内安装节点。node本身可以作为服务器来驱动,但是node本身不太擅长处理文件,所以我们在生产环境中尽量使用nginx来处理静态资源和反向代理,同时也解决了node分布式和负载均衡相关的问题。安装先安装makegcc之类的,用yum-yinstallautomakeautoconflibtoolmakeyuminstallgccgcc-c++编译,选择nginx安装目录,我选择/usr/local/srccd/usr/local/src一般我们都需要安装pcre和首先是zlib,前者用于重写,后者用于gzip压缩。wgetftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.42.tar.gztar-zxvfpcre-8.42.tar.gzcdpcre-8.42./configuremakeinstall可以查到在ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/选择最新版本pcrewgethttp://zlib.net/zlib-1.2.11.tar.gztar-zxvfzlib-1.2.11.tar.gzcdzlib-1.2.11./configuremakemakeinstall可以在http://zlib.net/选择最新版本的zlib来安装ssl网络通信安全,一个功能丰富且自成体系的开源安全工具箱wgethttps://www.openssl。org/source/openssl-1.1.1.tar.gztar-zxvfopenssl-1.1.1.tar.gz可以在https://www.openssl.org/source/选择最新版本的openssl来安装nginxNginx一般都有两个版本,分别是稳定版和开发版。您可以根据您的目的选择这两个版本之一。下面是在/usr/local/nginx目录下安装Nginx的详细步骤:wgethttp://nginx.org/download/nginx-1.4.2.tar.gztar-zxvfnginx-1.4.2.tar.gzcdnginx-1.4.2./configure--sbin-path=/usr/local/nginx/nginx\--conf-path=/usr/local/nginx/nginx.conf\--pid-path=/usr/local/nginx/nginx.pid\--with-http_ssl_module\--with-pcre=/usr/src/local/pcre-8.42\--with-zlib=/usr/src/local/zlib-1.2.11\--with-openssl=/usr/src/local/openssl-1.1.1makemakeinstall--with-pcre=/usr/src/local/pcre-8.42指的是pcre-8.42的源码路径--with-zlib=/usr/src/local/zlib-1.2.11指的是to为zlib-1.2.11的源码路径。安装完成安装成功后/usr/local/nginx目录下如下drwx-----2nobodyroot4096Nov210:16client_body_temp-rw-r--r--1rootroot1034Nov118:43fastcgi.conf-rw-r--r--1rootroot1034Nov118:43fastcgi.conf.default-rw-r--r--1rootroot964Nov118:43fastcgi_params-rw-r--r--1rootroot964Nov118:43fastcgi_params.defaultdrwx------2nobodyroot4096Nov210:16fastcgi_tempdrwxr-xr-x2rootroot4096Nov211:11html-rw-r--r--1rootroot2837Nov118:43koi-utf-rw-r--r--1rootroot2223Nov118:43koi-windrwxr-xr-x2rootroot4096Nov210:16logs-rw-r--r--1rootroot3463Nov118:43mime.types-rw-r--r--1rootroot3463Nov118:43mime.types.default-rwxr-xr-x1rootroot7177456Nov118:43nginx-rw-r--r--1rootroot3937Nov1316:14nginx.conf-rw-r--r--1rootroot2685Nov118:43nginx.conf.default-rw-r--r--1rootroot5Nov1210:02nginx.piddrwx------12nobodyroot4096Nov1315:29proxy_temp-rw-r--r--1rootroot596Nov118:43scgi_params-rw-r--r--1rootroot596Nov118:43scgi_params.defaultdrwx------2nobodyroot4096Nov210:16scgi_temp-rw-r--r--1rootroot623Nov118:43uwsgi_params-rw-r--r--1rootroot623Nov1Nov118:43uwsgi_params.defaultdrwx------2nobodyroot4096Nov210:16uwsgi_temp-rw-r--r--1rootroot3610Nov118:43win-utfstartcd/usr/local/nginx/./nginx现在打开浏览器,输入本机IP,可以看到WelcomeToNginx安装成功!将nginx添加到可执行程序目录下,每次操作nginx都要进入/usr/local/nginx/,好麻烦。有软链接可以帮到你吗?/usr/local/bin目录供用户放置自己的可执行程序。地方,我们只需要在这里建立一个nginx的软链接,全局执行nginxln-s/usr/local/nginx/nginx/usr/local/bin/nginx就大功告成了!将nginx设置为开机自动启动。我们每次开机都要启动nginx,也很麻烦,所以我们可以写一个自启动脚本,让它开机自动启动。那岂不是很好cd/etc/rc.d/init.dvimnginxserver这是nginx官网的自启动脚本,把这些粘贴到nginxserver#!/bin/sh##nginx-这个脚本启动和停止nginx守护进程##chkconfig:-8515#de描述:NGINX是一个HTTP(S)服务器,HTTP(S)反向\#代理和IMAP/POP3代理服务器#processname:nginx#config:/etc/nginx/nginx.conf#config:/etc/sysconfig/nginx#pidfile:/var/run/nginx.pid#源函数库../etc/rc.d/init.d/functions#源网络配置../etc/sysconfig/network#检查网络是否正常.["$NETWORKING"="no"]&&exit0nginx="/usr/local/nginx/nginx"prog=$(basename$nginx)NGINX_CONF_FILE="/usr/local/nginx/nginx.conf""-f/etc/sysconfig/nginx]&&。/etc/sysconfig/nginxlockfile=/var/lock/subsys/nginxmake_dirs(){#生成需要的目录user=`$nginx-V2>&1|grep“配置参数:.*--用户=”|sed's/[^*]*--user=\([^]*\).*/\1/g'-`if[-n"$user"];然后if[-z"`grep$user/etc/passwd`"];然后useradd-M-s/bin/nologin$userfioptions=`$nginx-V2>&1|grep'配置参数:'`foropt在$选项中;如果[`echo$opt|grep'.*-temp-path'`];然后value=`echo$opt|cut-d"="-f2`如果[!-d"$值"];然后#echo"creating"$valuemkdir-p$value&&chown-R$user$valuefifidonefi}start(){[-x$nginx]||退出5[-f$NGINX_CONF_FILE]||exit6make_dirsecho-n$"Starting$prog:"daemon$nginx-c$NGINX_CONF_FILEretval=$?echo[$retval-eq0]&&touch$lockfilereturn$retval}stop(){echo-n$"停止$prog:"killproc$prog-QUITretval=$?echo[$retval-eq0]&&rm-f$lockfilereturn$retval}restart(){配置测试||返回$?停止睡眠1开始}重新加载(){配置测试||返回$?echo-n$"正在重新加载$prog:"killproc$nginx-HUPRETVAL=$?echo}force_reload(){restart}configtest(){$nginx-t-c$NGINX_CONF_FILE}rh_status(){status$prog}rh_status_q(){rh_status>/dev/null2>&1}case"$1"instart)rh_status_q&&exit0$1;;停止)rh_status_q||退出0$1;;重启|配置测试)$1;;重新加载)rh_status_q||出口7$1;;强制重新加载)force_reload;;状态)rh_status;;condrestart|尝试重启)rh_status_q||出口0;;*)echo$"Usage:$0{start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"exit2esac:wq保存退出增加脚本可执行权限chmod+x/etc/rc.d/init.d/nginxserver添加脚本在开机时自动启动项目cd/etc/rc.d/init.dchkconfig--addnginxserverchkconfignginxserveronDone!
