1.搭建过程中命令使用
1.1 yum 命令
yum 是一个在 CentOS 和其他基于 RPM 的 Linux 发行版上常用的包管理工具。它可以用于安装、更新和删除软件包,以及处理相关的依赖关系。
1.1.1 更新操作
-- 更新资源包
yum check-update
-- 更新系统上的所有软件包
yum update
-- 更新系统上的所有软件包(-y : 自动跳过yes操作)
yum -y update
-- 升级一个软件包
yum upgrade <package_name>
1.1.2 安装操作
-- 安装一个软件包
yum install <package_name>
-- 自动安装一个软件包(-y : 自动跳过 yes操作)
yum -y install <package_name>
1.1.3卸载一个软件包
-- 卸载一个软件包
yum remove <package_name>
1.1.4 搜索一个软件包
-- 搜索一个软件包
yum search <keyword>
1.2 查找文件
-- 查找指定程序对应的位置
whereis 选项 文件名
选项:
-b:仅搜索可执行文件的位置
-m:仅搜索与源文件相关的位置
-s:仅搜索帮助文档的位置
举例说明: whereis nginx (查找nginx 在服务器中对应的位置)
2.如何删除已经安装的linux
2.1先停止nginx服务
sudo systemctl stop nginx
2.2删除nginx
-- 使用yum安装执行此命令卸载
sudo yum remove nginx
-- 使用dnf安装执行此命令卸载
sudo dnf remove nginx
2.3删除配置文件和日志文件
-- 查找文件所在位置
whereis nginx
-- 删除文件
sudo rm -r /etc/nginx
sudo rm -r /var/log/nginx
-- 安装包下载 不需要执行步骤2.2 直接执行下面命令即可
sudo rm -rf <nginx安装目录>
3.安装nginx
3.1下载安装包
-- 命令行使用yum install即可
-- http://nginx.org/en/download.html 官网下载也行
-- 这里推荐大家官方下载 命令行安装可能缺少环境配置等情况
-- 将安装包放到自定义的路径上(我放在了/usr/local)
3.2解压压缩包
-- 解压安装包
tar -zxvf nginx-1.24.0.tar.gz nginx-1.24.0/
3.3加载配置文件
-- 进入解压后的nginx文件中
cd /usr/local/nginx-1.24.0
-- 加载配置文件
./configure
3.4执行安装命令
-- 执行make命令
make
-- 执行make install命令
make install
3.5启动nginx
-- 执行上述几步,已经安装完毕
-- 执行whereis nginx 查找存放路径
-- cd 切换到指定路径 进到sbin目录
-- 执行 ./nginx
这里可能会有一个端口被占用的bug.
解决方案:
进入到/usr/local/nginx/conf 在conf目录下有一个 nginx.conf修改里面的监听端口即可
3.6启动端口后测试
服务器ip + 端口 跳转到 nginx欢迎页面 即表示安装成功
4.nginx常用命令
-- 启动nginx
./nginx
-- 停止nginx
./nginx -s stop
-- 安全退出
./nginx -s quit
-- 重新加载配置文件
./nginx -s reload
-- 查看nginx进程
ps aux|grep nginx
5.nginx.conf详解
5.1nginx简略配置
全局配置
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
进程最大数 和 监听事件配置
events {
worker_connections 1024;
}
请求配置
http {
http全局配置
#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;
服务配置 , server 可以配置多个
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html;
proxy_pass urlxxxx;
}
location = /50x.html {
root html;
}
}
server {
listen 81;
server_name localhost;
location / {
root html;
index index.html;
}
location = /50x.html {
root html;
}
}
}
5.2nginx实现代理
server {
#监听配置端口 有请求会打在对应的location下
listen 80;
server_name localhost;
location / {
root html;
index index.html;
#配置代理地址
proxy_pass urlxxxx;
}
#监听80端口下 /admin下的所有请求走location下的代理地址
location /admin {
root html;
index index.html;
#配置代理地址
proxy_pass urlxxxx;
}
location = /50x.html {
root html;
}
}
5.3nginx实现负载均衡
http {
upstream woshizidingyi {
server www.baidu.com weight=4;
server www.baidubaidu.com weight=2;
server www.baidubaidubaidu.com weight=1;
}
server {
...
location / {
proxy_pass http://woshizidingyi;
...
}
}
}
5.4nginx实现动静分离
前提条件
首先,将所有静态资源(例如 HTML、CSS、JavaScript、图像文件等)放置到一个特定的目录中,例如 /var/www/
server {
listen 80;
server_name yourdomain.com;
location / {
# 处理动态请求的配置
proxy_pass http://woshizidingyi;
...
}
# 匹配所有以 /static/ 开头的请求,将其映射到静态资源目录
location /static/ {
# 处理静态资源请求的配置
root /var/www;
expires max;
...
}
}
server {
listen 80;
server_name yourdomain.com;
location / {
# 处理动态请求的配置
proxy_pass http://woshizidingyi;
...
}
# 匹配所有以 /static/ 开头的请求,将其映射到静态资源目录
location /static/ {
# 处理静态资源请求的配置
root /var/www;
expires max;
...
}
}