概述
目录
一、Nginx介绍
二、安装nginx最新稳定版1.18
三、启动nginx和nginx常用命令
四、Nginx配置静态资源服务
五、静态资源服务器介绍
一、Nginx介绍
Nginx是一款轻量级的网页服务器、反向代理服务器。相较于Apache、lighttpd具有占有内存少,稳定性高等,并发能力强优势。它最常的用途是提供反向代理服务。
二、安装nginx最新稳定版1.18
1.ubuntu18.04当前apt源是1.18版本的,查看方法.
sudo apt-cahce show nginx
2.nginx官网当下最新的文档版本是1.18了,所以我们需要为apt添加最新的安装源。
3.第一步,准备相关依赖包,root权限需要去掉sudo.
sudo apt install curl gnupg2 ca-certificates lsb-release
4.第二步,在apt的安装源中(仓库)添加nginx的最新的稳定版(stable)的安装包.
echo "deb http://nginx.org/packages/ubuntu `lsb_release -cs` nginx"
| sudo tee /etc/apt/sources.list.d/nginx.list
5.第三步,添加nginx的安装源的签名密钥,通过apt的安全认证.
sudo curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add - #会返回[ok]
6.第四步,确认签名密钥.
sudo apt-key fingerprint ABF5BD827BD9BF62 #如果返回以下信息,说明安装正确
pub rsa2048 2011-08-19 [SC] [expires: 2024-06-14]
573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62
uid [ unknown] nginx signing key <signing-key@nginx.com>
7.第五步,执行安装命令.
sudo apt update
sudo apt install nginx
8.第六步,检查是否安装成功.
nginx -v
whereis nginx
三、启动nginx和nginx常用命令
1.启动/关闭/重启
sudo /etc/init.d/nginx start
sudo /etc/init.d/nginx down
sudo /etc/init.d/nginx restart
2.nginx优势:支持热部署,即可以不中断服务的同时,修改服务器配置信息,每次修改配置后需要执行。
nginx -t # 检查配置信息是否正确,如果返回seccuessfully,就可以执行,reload的。不管你有多自信,都请先走这一步,养成好习惯。
nginx -s reload #服务器配置信息,热部署
3.nginx常用命令
nginx -s quit 优雅停止nginx,有连接时会等连接请求完成再杀死worker进程
nginx -s reload 优雅重启,并重新载入配置文件nginx.conf
nginx -s reopen 重新打开日志文件,一般用于切割日志
nginx -v 查看版本
nginx -t 检查nginx的配置文件
nginx -h 查看帮助信息
nginx -V 详细版本信息,包括编译参数
nginx -c filename 指定配置文件
四、Nginx配置静态资源服务
1. 配置文件位置.
- 主配置文件/etc/nginx/nginx.conf
- 应用配置文件夹, /etc/nginx/conf.d/ 此文件夹下.conf文件都会被载入
2. 查看default.conf文件
cat /etc/nginx/conf.d/default.conf
server_name localhost #可以修改成你要绑定的域名
#location root 目录是 /usr/share/nginx/html/
3. 构建一个自己的静态网站配置
cd /etc/nginx/conf.d/
vi default.conf
"""
server {
listen 8090;
server_name localhost;
location /www/ {
root /data/;
index index.html index.htm;
}
location /audio/ {
root /data/;
autoindex on;
}
}
"""
#修改,server_name 为指定的IP地址,或者自己的域名www.mysite.com (域名的A记录已经指向这台服务器)
#修改,location 配置里的 root 为/data/
#创建文件目录,mkdir -p /data/image/ 将zhangsan.wav文件放在/data/audio/目录下
#访问地址:uri为:http://ip:8090/image/zhangsan.wav
#保存退出
sudo nginx -t #检查我们新建的配置文件是否正确
sudo nginx -s reload #重新加载配置文件
4. 效果图
5. 解决403的错误。
- 这个时候,直接访问www.mysite.com,容易出现是403错误,访问被禁止 forbidden
- 两个原因,一个是没有index.html文件(好解决,vim index.html到目录下),
- 一个是目录没有访问权限。我们可以设置/data/www/mysite的权限为755
- nginx安装后,会默认增加nginx的用户和组,ch
sudo chmod 755 /data
sudo chmod 755 /data/www
sudo chmod 755 /data/www/mystie
#为什么要从/data开始,因为nginx的网站目录的权限,要求父目录及以上都拥有同样的权限,需要读和执行的权限
cat /etc/passwd #查看所有用户
cat /etc/group #查看所有组
chown -R nginx /data/www/mysite
chgrp -R nginx /data/www/mysite
五、静态资源服务器介绍
在web项目中,我们会使用大量的图片,JS,CSS等资源,这些资源在客户端请求时是自动下载到客户端的缓存中进行调用。这就导致会有大量的静态资源需要被请求,服务器将会接受大量的请求调用,最后极大的影响了服务器的性能。
前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+tomcat的方式(也可以中间加一个nodejs)有效的进行解耦,并且前后端分离会为以后的大型分布式架构、弹性计算架构、微服务架构、多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础。这个步骤是系统架构从猿进化成人的必经之路。
核心思想是前端html页面通过ajax调用后端的restuful api接口并使用json数据进行交互。
在互联网架构中:
Web服务器:一般指像nginx,apache这类的服务器,他们一般只能解析静态资源。
应用服务器:一般指像tomcat,jetty,resin这类的服务器可以解析动态资源也可以解析静态资源,但解析静态资源的能力没有web服务器好。
一般都是只有web服务器才能被外网访问,应用服务器只能内网访问。
1.为什么要使用动静分离
要想理解这个问题,首先要知道什么是动静分离:
在未前后端分离时客户端接收的都是完整的经过服务器拼接好的View,服务器在每一个请求的过程中都会做大量的动作,这对服务器是极不友好的操作。在前后端分离之后,前端请求都成为了静态资源,后端服务只需要返回相应的数据,由客户端浏览器进行渲染。这样,减轻了后端服务的压力,使服务器能够处理更多的请求,但同时,出现了更多的不需要改变的资源。这些资源只要产生后就是不再变化的,所以将这类似的资源分离出来,就将极大减缓后端服务压力。简言之:让静态的资源只走静态资源服务器,动态的走动态的服务器。
就上文已经说明了为什么要使用动静分离,无非是让我们的服务能够接纳更多的请求,提供更迅速的服务。
2. Nginx做静态服务器优势
Nginx 应为它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。 nginx是一个小巧而高效的Linux下的web服务器软件。占用的内存小, Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性: 作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP,也可以支持作为 HTTP代理服务器 对外进行服务。Nginx 用 C 编写, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好的多。 作为邮件代理服务器: Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。 Nginx 安装非常的简单,配置文件 非常简洁(还能够支持perl语法),Bugs非常少的服务器: Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。
简言之:Nginx能够在同一时间内接受更多的请求,并且运行稳定,配置简单。
最后
以上就是美丽雪碧为你收集整理的【Linux】Nginx的安装与静态资源服务器搭建的全部内容,希望文章能够帮你解决【Linux】Nginx的安装与静态资源服务器搭建所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复