部署到服务器--Nginx

简介: Nginx

部署到服务器--Nginx

序:

  1. http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
  2. 虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
  3. 反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。

一、Nginx

img

1、pcre、pcre-devel安装

pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式。

yum install -y pcre pcre-devel

2、安装openssl

openssl是web安全通信的基石,没有openssl,可以说我们的信息都是在裸奔。

yum install -y openssl openssl-devel

3、下载并解压nginx安装包

// 下载
wget http://nginx.org/download/nginx-1.9.9.tar.gz 
//解压
tar -zxvf  nginx-1.9.9.tar.gz

4、进入nginx解压目录,执行命令

./configure 
make
make install

4.1、切换到/usr/local/nginx安装目录

在这里插入图片描述

4.2、进入nginx/conf,配置nginx.conf

在这里插入图片描述

4.3、启动nginx

进入sbin目录
./nginx

附:查看是否启动成功

ps -ef|grep nginx

此时访问公网ip会显示nginx欢迎界面

5、uwsgi配置

在Django根目录下新建uwsgi.ini uwsgi.pid uwsgi.log文件
编辑uwsgi.ini文件

[uwsgi]
#使用nginx连接时使用
socket=127.0.0.1:8001
#直接做web服务器使用 python manage.py runserver ip:port
#http=127.0.0.1:8080
#项目目录
chdir=/var/web/CloudArchives
#项目中wsgi.py文件的目录,相对于项目目录
wsgi-file=CloudArchives/wsgi.py
#指定启动的工作进程数
processes=4
#指定工作进程中的线程数
threads=2
master=True
#保存启动之后主进程的pid
pidfile=uwsgi.pid
#设置uwsgi后台运行,uwsgi.log保存日志信息
daemonize=uwsgi.log
#设置虚拟环境的路径
#virtualenv=/Users/smart/.virtualenvs/dailyfresh

5.1、运行django项目

django manage.py runserver

5.2、给uwsgi建立软连接

ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

6、进入项目根目录,启动uwsgi

uwsgi --ini uwsgi.ini

img

重启Nginx

./nginx -s reload

在这里插入图片描述

附:nginx常用命令

启动:start nginx 默认是根据nginx.conf来启动的

如果要指定配置文件来启动则使用以下命令即可:nginx -c ./conf/jason.conf

关闭:nginx -s stop 快速关闭nginx服务。

nginx -s quit 优雅的关闭,优雅是指当一个请求被处理完成之后才被关闭。

在linux下进行关闭nginx:

1、优雅关闭
先找出nginx的进程号:`ps -ef|grep nginx
执行命令:kill -QUIT pid
2、快速关闭
也是要先找出nginx的进程号,然后执行kill -TERM pid

nginx -t 检查配置是否有错误

nginx -s reload 刷新nginx配置文件

二、前端

1、下载nodejs压缩包

用命令行形式进行下载

wget https://nodejs.org/dist/v14.15.4/node-v14.15.4-linux-x64.tar.xz

img

解压缩包

tar -xvf node-v14.15.4-linux-x64.tar.xz
mkdir -p /usr/local/nodejs
mv node-v14.15.4-linux-x64/* /usr/local/nodejs/

2、创建软链接

# 建立node软链接
ln -s /usr/local/nodejs/bin/node /usr/local/bin
# 建立npm 软链接
ln -s /usr/local/nodejs/bin/npm /usr/local/bin

3、更换镜像源

# 设置国内淘宝镜像源
npm config set registry https://registry.npm.taobao.org
# 查看设置信息
npm config list

image.png

附:验证是否安装成功

node -v
npm -v

image.png

4、前端打包项目

npm run build (打包项目)

将前端project执行npm run build命令。执行完的dist文件夹才几MB。

img

5、前端项目部署

将dist文件夹上传到服务器

可以上传到服务器随便一个地方,我是/usr/share/nginx/,就是nginx默认开启页面的隔壁。

image.png

6、修改nginx的配置文件

vim /etc/nginx/nginx.conf,然后把dist文件夹引进来

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-G7k3sydC-1645813011893)(C:\Users\huawei\AppData\Roaming\Typora\typora-user-images\image-20220226015104585.png)]

7、重启nginx服务。

service nginx restart
// 或
cd /usr/local/nginx/sbin/
./nginx -s reload

浏览器访问ip访问即可
(使用软件MobaXterm_Personal_12.3)

目录
相关文章
|
10月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
4186 4
|
10月前
|
Java Linux Apache
在CentOS服务器上编译并部署NiFi源码
部署Apache NiFi在CentOS上是一个涉及细节的过程,需要注意Java环境、源码编译、配置调整等多个方面。遵循上述步骤,可以在CentOS服务器上成功部署和配置Apache NiFi,从而高效地处理和分发数据。
315 17
|
10月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
457 5
|
10月前
|
弹性计算 人工智能 前端开发
在阿里云ECS上部署n8n自动化工作流:U2实例实战
本文介绍如何在阿里云ECS的u2i/u2a实例上部署开源工作流自动化平台n8n,利用Docker快速搭建并配置定时任务,实现如每日抓取MuleRun新AI Agent并推送通知等自动化流程。内容涵盖环境准备、安全组设置、实战案例与优化建议,助力高效构建低维护成本的自动化系统。
2234 5
|
11月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
534 18
|
11月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
915 17
|
关系型数据库 MySQL 应用服务中间件
|
Web App开发 应用服务中间件 nginx
saltstack批量部署并配置nginx
最近应别的部门要求研究了一下saltstack,感觉很好用哈!虽然我现在生产环境用的puppet,想以后逐渐用这个去替代puppet,至于ansible还没研究,以后有时间再看看吧! 一、Saltstack是什么? saltstack是一种全新的基础设施管理方式,部署轻松,在几分钟内可运行起来,扩展性好,很容易管理上万台服务器,速度够快,服务器之间秒级通讯。
2178 0
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
1136 87