Nginx 安装教程 及 反向代理设置

本贴最后更新于 2017 天前,其中的信息可能已经物是人非

1.1 Nginx 下载安装

1、Nginx 下载:nginx-1.13.0.tar.gz,下载到:/usr/local/software/

wget http://nginx.org/download/nginx-1.13.0.tar.gz

2、Nginx 解压安装:

tar -zxvf nginx-1.13.0.tar.gz -C ./

3、Nginx 编译

./configure

报错

  1. 解决./configure: error: C compiler cc is not found 错误:

错误原因:缺少编译环境,安装编译源码所需要的工具和库:

执行命令:yum install gcc gcc-c++ ncurses-devel perl

 再次编译:./configure --prefix=/usr/local/nginx

  1. 解决./configure: error: the HTTP rewrite module requires the PCRElibrary.错误:

错误原因:缺少 HTTP rewrite module 模块,禁用或者安装所需要的模块。我们选择安装模块:

  执行命令:yum install pcre pcre-devel

  1. 解决./configure: error: the HTTP gzip module requires the zliblibrary.错误:

  错误原因:缺少 HTTP zlib 类库,我们选择安装模块:

  执行命令:

  yuminstall zlib gzip zlib-devel

4.编译成功

5.安装 Nginx:

安装命令:make & make install

1.2 Nginx 启动

1、查看安装目录:cd

conf 存放配置文件

html 网页文件

logs 存放日志

sbin shell 启动、停止等脚本

2、启动 nginx

查看进程

常见问题:

解决 nginx:[emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)错误:

错误原因:不能绑定 80 端口,80 端口已经被占用。

3、停止 nginx,重新加载配置文件

执行命令:kill –INT 进程号

启动成功:

重新读取配置文件:

nginx-s reload

4、Nginx 信号控制

|

TERM, INT

|

快速停止(杀死进程)

|
|

QUIT

|

优雅的关闭进程,即等请求结束后再关闭

|
|

HUP

|

改变配置文件,平滑的重读配置文件

|
|

USR1

|

重读日志,在日志按月/日分割时有用

|
|

USR2

|

平滑的升级

|
|

WINCH

|

优雅关闭旧的进程(配合 USR2 进行升级)

|

5.打开浏览器


1.3 常用命令

进去 nginx 的安装目录

进去 sbin

常用命令

启动
./nginx

检查 nginx.conf 配置文件
./nginx -t

重启
./nginx -s reload

停止

./nginx -s stop


1.4 学习 Nginx 推荐书籍:

  1. 《深入剖析 Nginx》

  2. 《实战 Nginx:取代 Apache 的高性能 Web 服务器》

  3. 《深入理解 Nginx:模块开发与架构解析》

  4. 《深入理解 Nginx:模块开发与架构解析》

  5. 《决战 Nginx 技术卷:高性能 Web 服务器部署与运维》

  6. 《决战 Nginx 系统卷:高性能 Web 服务器详解与运维》

from:http://blog.csdn.net/yuan_xw/article/details/51181282#comments

2.0 反向代理配置

找到 conf/nginx.conf 文件,编辑:

worker_processes 1;

events {
worker_connections 1024;
}

http {
include mime.types;
default_type application/octet-stream;

sendfile        on;

keepalive_timeout  65;

server {
    listen       80;
    server_name  127.0.0.1:8080;

    location / {

        proxy_pass   http://127.0.0.1:8080;
    }

}

}

server 下的结点:

listen:监听 80 端口

server_name:转发到哪个地址

proxy_pass:代理到哪个地址

  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    920 引用 • 931 回帖 • 2 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...