• Nginx打卡


    Nginx打卡

     

    此括号中的是干货

     

     

    直接说最关心的事:如何去掉访问路径的端口号?

     

    答案:使用Nginx啊

     

    具体安装还需看底下啰嗦的东东,安装OK且完美启动的同学,server proxy_pass 了解下:

     

    server {

     

            listen       80;

     

            server_name  服务器地址;

     

            location / {

     

                proxy_pass 服务器地址:8081;

     

            }

     

        }

     

     

     

    nginx 干啥的

          * 俄罗斯非著名相声演员Igor Sysoev 为俄罗斯访问量第二的Rambler.ru 站点开发的一个高性能的HTTP和反向代理服务器,同时其也是一个IMAP/POP3/SMTP 代理服务器。

    nginx 最牛逼的两点 

          * 反向代理

          * 负载均衡

    ngnix 架构

          * Nginx 在启动后,会有一个 master 进程和多个 worker 进程。master 进程主要用来管理 worker 进程,包含:接收来自外界的信号,向各 worker 进程发送信号,监控 worker 进程的运行状态,当 worker 进程退出后(异常情况下),会自动重新启动新的 worker 进程。而基本的网络事件,则是放在 worker 进程中来处理了。多个 worker 进程之间是对等的,他们同等竞争来自客户端的请求,各进程互相之间是独立的。一个请求,只可能在一个 worker 进程中处理,一个 worker 进程,不可能处理其它进程的请求。worker 进程的个数是可以设置的,一般我们会设置与机器cpu核数一致。

     

    Nginx安装

    1.安装C++编译工具及库文件

    yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

    2.安装 PCRE 为了使nginx支持Rewrite功能

    # wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

    2.1解压安装包

    # tar zxvf pcre-8.35.tar.gz

    2.2.进入安装包目录 编译安装

    # cd pcre-8.35

    # ./configure

    # make && make install

    3.安装Nginx

    3.1下载安装包

    # wget http://nginx.org/download/nginx-1.6.2.tar.gz

    3.2解压安装包

    # tar zxvf nginx-1.6.2.tar.gz

    3.3 进入安装包目录编译安装

    # cd nginx-1.6.2

    # ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35

    # make

    # make install

    3.4 查看nginx版本

    # /usr/local/webserver/nginx/sbin/nginx -v

    Nginx 的配置系统

    创建nginx运行使用的用户 www:

    # /usr/sbin/groupadd www

    # /usr/sbin/useradd -g www www

    关于nginx的配置请查阅相关资料照猫画虎

    以上是安装时参考的,来自于菜鸟教程

    以下又是一些概念,来自于W3Cschool

    Nginx 的配置系统由一个主配置文件和其他一些辅助的配置文件构成。这些配置文件均是纯文本文件,全部位于Nginx 安装目录下的 conf 目录下。

    配置文件中以#开始的行,或者是前面有若干空格或者 TAB,然后再跟#的行,都被认为是注释,也就是只对编辑查看文件的用户有意义,程序在读取这些注释行的时候,其实际的内容是被忽略的。

    由于除主配置文件 nginx.conf 以外的文件都是在某些情况下才使用的,而只有主配置文件是在任何情况下都被使用的。所以在这里我们就以主配置文件为例,来解释 Nginx 的配置系统。

    在 nginx.conf 中,包含若干配置项。每个配置项由配置指令和指令参数 2 个部分构成。指令参数也就是配置指令对应的配置值。

    简单配置项 不需要花括号括起来 eg.

    error_page 500 502 503 504 /50x.html;

    复杂配置项需要花括号括起来 eg.

    location / {

         root /home/jizhao/nginx-book/build/html; index index.html               index.htm;

    }

    指令上下文

    nginx.conf 中的配置信息,根据其逻辑上的意义,对它们进行了分类,也就是分成了多个作用域,或者称之为配置指令上下文。不同的作用域含有一个或者多个配置项。

    当前 Nginx 支持的几个指令上下文:

    • main: Nginx 在运行时与具体业务功能(比如http服务或者email服务代理)无关的一些参数,比如工作进程数,运行的身份等。
    • http: 与提供 http 服务相关的一些配置参数。例如:是否使用 keepalive 啊,是否使用gzip进行压缩等。
    • server: http 服务上支持若干虚拟主机。每个虚拟主机一个对应的 server 配置项,配置项里面包含该虚拟主机相关的配置。在提供 mail 服务的代理时,也可以建立若干 server,每个 server 通过监听的地址来区分。
    • location: http 服务中,某些特定的URL对应的一系列配置项。
    • mail: 实现 email 相关的 SMTP/IMAP/POP3 代理时,共享的一些配置项(因为可能实现多个代理,工作在多个监听地址上)。

    指令上下文,可能有包含的情况出现。例如:通常 http 上下文和 mail 上下文一定是出现在 main 上下文里的。在一个上下文里,可能包含另外一种类型的上下文多次。例如:如果 http 服务,支持了多个虚拟主机,那么在 http 上下文里,就会出现多个 server 上下文。

    我的问题其实就在域名跳转这里,今天找到一个大佬写的,但是还没能完全成功,估计是我哪里搞的还是有问题,需要反复琢磨。

    以下是大佬关于http server的配置

    server {

             listen       80;

             server_name  bbs.xxx.com;

            location / {

                      proxy_pass http://bbs.xxx.com:9066/;

             }

    }

    不得不说,我抄袭的这个没有半点意义,因为我现在还访问不到nginx主页,但也有点gg,我可以不带端口的访问到我的工程。。。具体问题后续跟踪。

     

  • 相关阅读:
    Cocos2d-html5 笔记2: director
    Cocos2d html5 笔记 1: overview
    Device Pixel Ratio & Media Queries
    Viewport
    Viewport解决分辨率适配问题
    Ajax缓存解决办法
    capitalize()
    chr() 、ord()
    oct()
    eval()
  • 原文地址:https://www.cnblogs.com/zhaiyt/p/ngnix.html
Copyright © 2020-2023  润新知