Nginx服务器开箱体验

简介: Nginx服务器开箱体验 概述 Nginx是高性能的轻量级WEB服务器,由于其提供HTTP代理和反向代理、负载均衡、缓存等一系列重要特性,从而广泛应用于当今的WEB服务之中,学习其很有必要。笔者也是从一个初学者开始学习并记录,希望后续渐渐深入。

Nginx服务器开箱体验

概述

Nginx是高性能的轻量级WEB服务器,由于其提供HTTP代理和反向代理、负载均衡、缓存等一系列重要特性,从而广泛应用于当今的WEB服务之中,学习其很有必要。笔者也是从一个初学者开始学习并记录,希望后续渐渐深入。

对了,为什么不用Docker来启动Nginx呢?因为不想啊!


实验环境

  • CentOS 7.4 64Bit
  • Nginx 1.14.0 稳定版

下载Nginx

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

安装Nginx

  • 安装第三方库
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
yum -y install pcre-devel

安装成功以后可以查看pcre版本: pcre-config —version

查看pcre版本

  • 解压安装包
tar zxvf nginx-1.14.0.tar.gz
  • 从configure脚本自动生成Makefile
cd /root/nginx-1.14.0
./configure --prefix=/usr/local/webserver/nginx

这里的 —prefix 选项是指定Nginx的安装路径,这里我是指定安装到路径:/usr/local/webserver/nginx

  • 编译安装
cd /root/nginx-1.14.0
make && make install

编译安装过程如下,直到完成

编译安装过程如下

  • 查看Nginx版本
/usr/local/webserver/nginx/sbin/nginx -v

查看Nginx版本

  • 查看安装后的目录

总共四个目录:confhtmllogssbin

查看安装后的目录


启动Nginx

/usr/local/webserver/nginx/sbin/nginx

浏览器访问Nginx成功(注意:由于我的机子上80端口被占用了,因此我将Nginx起在81端口上了):

浏览器访问成功


常用指令

  • 测试nginx测试文件是否正确
/usr/local/webserver/nginx/sbin/nginx -t
  • 指定配置文件启动
/usr/local/webserver/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
  • 重启nginx
/usr/local/webserver/nginx/sbin/nginx -s reload            # 重新载入配置文件
/usr/local/webserver/nginx/sbin/nginx -s reopen          #重启 Nginx
  • 停止nginx
/usr/local/webserver/nginx/sbin/nginx -s stop # 停止 Nginx

Nginx服务器配置实例与实验

准备配置文件 nginx.conf 如下:

// 全局配置
user  nobody  nobody;
worker_processes  3;
error_log  logs/error.log;
pid  logs/nginx.pid;

// events块配置
events {
    use epoll;
    worker_connections  1024;
}

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

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request” '
                      '$status $body_bytes_sent "$http_referer” '
                      '"$http_user_agent" "$http_x_forwarded_for”’;
    access_log  logs/access.log  main;
    sendfile  on;
    keepalive_timeout  65;

    // 虚拟主机1:基于域名codesheep.com
    server {
        listen       8088;
        server_name  codesheep;

        access_log  /codesheep/webserver/server1/log/access.log;
        error_page  404  /404.html;

        location /server1/location1 {
            root   /codesheep/webserver;
            index  index.server1-location1.htm;
        }

        location /server1/location2 {
            root   /codesheep/webserver;
            index  index.server1-location2.htm;
        }

    }

    // 虚拟主机2:基于IP地址:192.168.31.177
    server {
        listen       8089;
        server_name  192.168.31.177;

        access_log  /codesheep/webserver/server2/log/access.log;
        error_page  404  /404.html;

        location /server2/location1 {
            root   /codesheep/webserver;
            index  index.server2-location1.htm;
        }

        location /srv2/loc2 {
            alias   /codesheep/webserver/server2/location2/;
            index  index.server2-location2.htm;
        }

        location = /404.html {
            root /codesheep/webserver/;
            index 404.html;
        }
    }
}

很明显,在上述配置文件中配置了两个虚拟主机:一个 基于域名一个基于IP地址

为了验证该配置的正确性,我们对照此配置,构建一个与其对应的静态站点,其目录结构如下:

站点结构

现在可以启动Nginx服务器,并在浏览器中进行测试

  • 测试站点server1的访问

server1/location1

server1/location2

这就说明配置文件中虚拟主机1配置生效!

注意:这里域名www.codesheep.com之所以能被解析识别,是因为本地配置了DNS服务器!

  • 测试站点server2的访问

server2/location1

srv2/loc2

这就说明配置文件中虚拟主机2配置生效!

相关文章
|
7月前
|
缓存 负载均衡 JavaScript
Nginx:高性能Web服务器与反向代理利器
Nginx:高性能Web服务器与反向代理利器
371 110
|
7月前
|
缓存 负载均衡 前端开发
Nginx:高性能的Web服务器与反向代理利器
Nginx:高性能的Web服务器与反向代理利器
373 99
|
7月前
|
缓存 负载均衡 前端开发
Nginx:高性能Web服务器的核心引擎
Nginx:高性能Web服务器的核心引擎
257 47
|
6月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
371 18
|
6月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
595 17
|
弹性计算 安全 应用服务中间件
ECS动手搭建Nginx
在ECS的centos7上搭建一个Nginx
2445 7
ECS动手搭建Nginx
|
5月前
|
弹性计算 运维 安全
阿里云轻量应用服务器与云服务器ECS啥区别?新手帮助教程
阿里云轻量应用服务器适合个人开发者搭建博客、测试环境等低流量场景,操作简单、成本低;ECS适用于企业级高负载业务,功能强大、灵活可扩展。二者在性能、网络、镜像及运维管理上差异显著,用户应根据实际需求选择。
445 10
|
5月前
|
运维 安全 Ubuntu
阿里云渠道商:服务器操作系统怎么选?
阿里云提供丰富操作系统镜像,涵盖Windows与主流Linux发行版。选型需综合技术兼容性、运维成本、安全稳定等因素。推荐Alibaba Cloud Linux、Ubuntu等用于Web与容器场景,Windows Server支撑.NET应用。建议优先选用LTS版本并进行测试验证,通过标准化镜像管理提升部署效率与一致性。
|
5月前
|
弹性计算 ice
阿里云4核8g服务器多少钱一年?1个月和1小时价格,省钱购买方法分享
阿里云4核8G服务器价格因实例类型而异,经济型e实例约159元/月,计算型c9i约371元/月,按小时计费最低0.45元。实际购买享折扣,1年最高可省至1578元,附主流ECS实例及CPU型号参考。
602 8
|
5月前
|
存储 监控 安全
阿里云渠道商:云服务器价格有什么变动?
阿里云带宽与存储费用呈基础资源降价、增值服务差异化趋势。企业应结合业务特点,通过阶梯计价、智能分层、弹性带宽等策略优化成本,借助云监控与预算预警机制,实现高效、可控的云资源管理。