August 27, 2017
一直想给自己弄一个云服务器和自己的域名,现在抓住了机会。阿里云有免费和非常实惠的新手大礼包。如果你也想体验一下,可以试试,我当时申请的就是这种。
我选择的系统配置是Linux Ubuntu 14.04,如果你不是选的Linux,不用再往下看了。
我是通过sftp的方式将文件放上去的
# sftp模式登陆到服务器
sftp name@ip
# cd到你想放置临时文件的目录
sftp> cd /tmp
# cd到你本机下载文件的位置
sftp> lcd ~/Download
# 上传文件
sftp> put nginx.tar.gz openssl.tar.gz pcre.tar.gz zlib.tar.gz
我使用ssh的方式
# ssh登陆服务器
ssh name@ip
# cd到刚才上传文件的目录
cd /tmp
# 解压文件
tar -xzf filename
# 进入nginx源码目录做小小的修改,为了安全
cd ./nginx/src/core
vim nginx.h
源文件内容如下
/*
* Copyright (C) Igor Sysoev
* Copyright (C) Nginx, Inc.
*/
#ifndef _NGINX_H_INCLUDED_
#define _NGINX_H_INCLUDED_
#define nginx_version 1013004
#define NGINX_VERSION "1.13.4"
#define NGINX_VER "nginx/" NGINX_VERSION
#ifdef NGX_BUILD
#define NGINX_VER_BUILD NGINX_VER " (" NGX_BUILD ")"
#else
#define NGINX_VER_BUILD NGINX_VER
#endif
#define NGINX_VAR "NGINX"
#define NGX_OLDPID_EXT ".oldbin"
#endif /* _NGINX_H_INCLUDED_ */
更改之后的文件内容如下
/*
* Copyright (C) Igor Sysoev
* Copyright (C) Nginx, Inc.
*/
#ifndef _NGINX_H_INCLUDED_
#define _NGINX_H_INCLUDED_
#define nginx_version 1013004
#define NGINX_VERSION ""
#define NGINX_VER "super" NGINX_VERSION
#ifdef NGX_BUILD
#define NGINX_VER_BUILD NGINX_VER " (" NGX_BUILD ")"
#else
#define NGINX_VER_BUILD NGINX_VER
#endif
#define NGINX_VAR "super"
#define NGX_OLDPID_EXT ".oldbin"
#endif /* _NGINX_H_INCLUDED_ */
# cd到nginx目录,从core目录操作
cd ../../
# configure
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-openssl=/tmp/openssl --with-pcre=/tmp/pcre --with-zlib=/tmp/zlib
# /usr/local/nginx 指的是最终编译安装到此路径
# /tmp/openssl, /tmp/pcre, /tmp/zlib 对应解压源码文件夹位置
# install
make install
# 安装完之后到安装目录下去
cd /usr/local/nginx
# 检查一下是否安装配置成功
cd ./sbin
./nginx -t
# 正常输出如下
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
# 如果看到如下结果,尝试重启一下
The program 'nginx' can be found in the following packages:
* nginx-core
* nginx-extras
* nginx-full
* nginx-light
* nginx-naxsi
Try: apt-get install <selected package>
至此,已经成功安装好了nginx。
有人会问为什么不通过apt-get install nginx
之类的命令来安装,我想说的是,那种方式就无法体验最新版的nginx了。
Written by ricosmall.
Github