实验环境

  • 服务器:centos7.5 1核1G
  • Nginx版本:nginx-1.14.2

主题

  1. 部署静态文件
  2. 根据不同url请求路径,定向到不同的系统文件夹

部署静态文件

假设nginx安装在“/usr/local/nginx”目录,创建文件夹"/root/web/html",上传index.html到该目录下,index.html的代码如下:

<html lang="en">
<head>
<meta charset="UTF-8">
<title>index</title>
</head>
<body>
<span>Hello Nginx</span>
</body>
</html>

修改"/usr/local/nginx/conf/nginx.conf"文件,在http节点下新增server节点,由于80端口已经被使用,那么就使用8080端口,配置如下:

server {
listen ;
server_name localhost; location / {
root /root/web/html;
}
}

检测nginx.conf文件的正确性,通过nginx指令

 ./nginx -t

输出如下,说明nginx配置文件正确

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

重新加载nginx配置文件

./nginx -s reload;

通过浏览器访问“http://ip:8080,输出:Hello Nginx

根据不同url请求路径,定向到不同的系统文件夹

创建文件夹"/root/web/images", 并在该文件夹下上传一张图片“1.jpg", 将url以/images/为前缀的定向到该文件夹,修改nginx配置文件“/usr/local/nginx/conf/nginx.conf”,添加如下节点:

 location /images/ {
root /root/web;
}

完整配置如下:

server {
listen ;
server_name localhost; location / {
root /root/web/html;
} location /images/ {
root /root/web;
}
}

重新加载nginx配置文件

./usr/loca/nginx/sbin/nginx -s reload;

访问http://139.9.50.226:8080/images/1.jpg,显示图片, nginx将该请求映射到"/root/web/images/1.jpg"文件。

特别需要注意:

location /images/ {
root /root/web;
}

该location的作用是将匹配的url的/images/...部分加在root对应的路径后面,nginx映射到文件系统中。

在使用nginx的过程中,经常将该location配置成:

location /images/ {
root /root/web/images; //设置路径:/root/web/images/images/
}

特别需要注意nginx是否需要加上匹配的前缀,在反向代理的使用过程中,也需要特别注意

nginx部署静态网站的更多相关文章

  1. 使用Nginx部署静态网站

    这篇文章将介绍如何利用Nginx部署静态网站. 之前写过2篇有关Nginx的文章,一篇是<利用nginx,腾讯云免费证书制作https>,另外一篇是<linux安装nginx> ...

  2. 【笔记】nginx部署静态网站

    安装nginx 本地到官网下载,然后把压缩包传到服务器上 安装三个依赖 apt-get install libpcre3 libpcre3-dev apt-get install zlib1g-dev ...

  3. nginx搭建静态网站

    Nginx (engine x) 是一个高性能的HTTP和反向代理web服务,常用于负载均衡构架,以提高网站的并发量,概念不过多介绍,更多细节请自行百度, 本文是纯操作案例,假设你已经知道什么是ngi ...

  4. Docker 案例: 在容器中部署静态网站

    ----------------知识点------------ 容器的端口映射: docker  run  [-P] [-p] -P,–publish-all=true | false,大写的P表示为 ...

  5. Docker 在容器中部署静态网站

    Docker 在容器中部署静态网站 在容器中部署静态网站 设置容器的端口映射 run -P``--publish-all=true|false:容器暴露的所有端口进行映射 -p``--publish= ...

  6. 《Linux就该这么学》培训笔记_ch10_使用Apache服务部署静态网站

    <Linux就该这么学>培训笔记_ch10_使用Apache服务部署静态网站 文章最后会post上书本的笔记照片. 文章主要内容: 网站服务程序 配置服务文件参数 SELinux安全子系统 ...

  7. Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署静态网站(6)

    前言 在之前已经写了关于Git,Gitlab以及Ansible的两篇博客<Git+Gitlab+Ansible剧本实现一键部署Nginx–技术流ken>,<Git+Gitlab+An ...

  8. Docker学习(5) 在docker中部署静态网站

    在容器中部署静态网站 设置容器的端口映射 在容器中部署静态网站  -  Nginx部署流程 1 创建映射80端口的交互式容器 2 安装Nginx 3 安装文本编辑器vim 4 创建静态页面 5 修改N ...

  9. Nginx部署静态页

    简答说一下如何用Nginx部署静态网页,并绑定域名访问 1.通过FTP上传静态页到服务器指定目录 2.编写nginx的.conf文件 3.重启nginx 如图,这是centos上传文件路径 nginx ...

随机推荐

  1. python教你用微信每天给女朋友说晚安

    但凡一件事,稍微有些重复.我就考虑怎么样用程序来实现它. 这里给各位程序员朋友分享如何每天给朋友定时微信发送"晚安",故事,新闻,等等··· ···最好运行在服务器上,这样后台挂起 ...

  2. traceback模块

    traceback模块被用来跟踪异常返回信息 如下例所示: import traceback try: raise SyntaxError, "traceback test" ex ...

  3. 利用 Python + Selenium 实现对页面的指定元素截图(可截长图元素)

    对WebElement截图 WebDriver.Chrome自带的方法只能对当前窗口截屏,且不能指定特定元素.若是需要截取特定元素或是窗口超过了一屏,就只能另辟蹊径了. WebDriver.Phant ...

  4. Java通过JDBC 进行MySQL数据库操作

    转自: http://blog.csdn.net/tobetheender/article/details/52772157 Java通过JDBC 进行MySQL数据库操作 原创 2016年10月10 ...

  5. freemarker导出word文档

    使用freemarker导出word文档的过程 **************************************************************************** ...

  6. channel.go

    )         c.RLock()         client, ok := c.clients[msg.clientID]         c.RUnlock()         if ok ...

  7. 【BZOJ4417】: [Shoi2013]超级跳马

    题目链接: 传送. 题解: 矩阵快速幂优化DP. 先考虑$nm^2$DP,设$f_{(i,j)}$表示从$1,1$到$i,j$的方案,显然这个方程和奇偶性有关,我们考虑某列的$i$同奇偶性的转移和奇偶 ...

  8. BZOJ_5015_[Snoi2017]礼物_矩阵乘法

    BZOJ_5015_[Snoi2017]礼物_矩阵乘法 Description 热情好客的请森林中的朋友们吃饭,他的朋友被编号为 1-N,每个到来的朋友都会带给他一些礼物:.其中,第 一个朋友会带给他 ...

  9. Charles 连接手机抓包出现Unknown,一直无法抓包的问题解决

    mac电脑安装了charles并且确保已经安装成功,https抓包需要安装的相关的证书已经安装,并且手机浏览器中输入chls.pro/ssl已经将证书下载完成,但是手机与电脑相连通过点击手机应用还是无 ...

  10. c# 基于文件系统实现的队列处理类

    现实业务中经常遇到需要队列处理的问题. 问题场景: 客户端记录设备运行数据,传输给服务器.在传输中可能存在延迟或中断情况.当中断时,系统传输数据可能因为无法传输或电脑重启,会导致服务器数据记录不连续. ...