开始前,请确认gcc g++开发类库是否装好,默认已经安装。
ububtu平台编译环境可以使用以下指令:
apt-get install build-essential
apt-get install libtool
centos平台编译环境使用如下指令:
安装make:
yum -y install gcc automake autoconf libtool make
安装g++:
yum install gcc gcc-c++
下面正式开始。
一、选定安装文件目录
可以选择任何目录,本文选择 cd /usr/local/src:
cd /usr/local/src
二、安装PCRE库
上传pcre-8.39.tar.gz至安装目录/usr/local/src 目录下,解压进行安装:
tar -zxvf pcre-8.37.tar.gz
cd pcre-8.34
./configure
make
make install
三、安装zlib库
上传zlib-1.2.11.tar.gz 至安装目录/usr/local/src 目录下,解压进行安装:
cd /usr/local/src
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure
make
make install
安装openssl(某些vps默认没装ssl):
上传openssl-1.0.lt.tar.gz 至安装目录/usr/local/src 目录下,解压:
cd /usr/local/src
tar -zxvf openssl-1.0.1t.tar.gz
四、安装nginx
上传nginx-1.1.10.tar.gz 至安装目录/usr/local/src 目录下,解压安装。
Nginx 一般有两个版本,分别是稳定版和开发版,您可以根据您的目的来选择这两个版本的其中一个,下面是把 Nginx 安装到 /usr/local/nginx 目录下的详细步骤:
cd /usr/local/src
tar -zxvf nginx-1.1.10.tar.gz
cd nginx-1.1.10
./configure
make
make install
注:这里可能会出现报错。
按照第四步方法或者ubuntu下:
apt-get install openssl
apt-get install libssl-dev
centos下
yum -y install openssl openssl-devel
五、启动nginx
因为可能apeache占用80端口,apeache端口尽量不要修改,我们选择修改nginx端口。
linux 修改路径:/usr/local/nginx/conf/nginx.conf,Windows 下安装目录:\conf\nginx.conf。
修改端口为8090,localhost修改为你服务器ip地址。(成功就在眼前!!)
启动nginx:
netstat -ano|grep 80
如果查不到执行结果,则说明80端口未被占用,可忽略上一步不用修改端口(ubuntu下必须用sudo启动,不然只能在前台运行)。
sudo /usr/local/nginx/nginx
六、nginx重启、关闭、启动
1.启动:
启动代码格式:nginx安装目录地址 -c nginx配置文件地址。
例如:
[root@LinuxServer sbin]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
2.停止:
nginx的停止有三种方式:
1)从容停止:
1、查看进程号:
[root@LinuxServer ~]# ps -ef|grep nginx
2、杀死进程:
[root@LinuxServer ~]# kill -QUIT 2072
2)快速停止:
1、查看进程号:
[root@LinuxServer ~]# ps -ef|grep nginx
2、杀死进程:
[root@LinuxServer ~]# kill -TERM 2132
或 [root@LinuxServer ~]# kill -INT 2132
3)强制停止:
[root@LinuxServer ~]# pkill -9 nginx
3.重启:
1、验证nginx配置文件是否正确:
方法一:进入nginx安装目录sbin下,输入命令./nginx -t。
看到如下显示:
nginx.conf syntax is ok
nginx.conf test is successful
说明配置文件正确!
方法二:在启动命令-c前加-t。
2、重启Nginx服务
方法一:进入nginx可执行目录sbin下,输入命令./nginx -s reload 即可。
方法二:查找当前nginx进程号,然后输入命令:kill -HUP 进程号 实现重启nginx服务。
七、最终结果
问题汇总:
编译nginx出问题。
解决办法:
注释掉Werror(它要求GCC将所有的警告当成错误进行处理 所有导致错误输出 并不能进行下一步)。