nginx配置文件介绍及示例
一、nginx配置文件一共有main,http,server,location,upstream,stream,events7个块。
step 1: main 块
作用:main 块是 Nginx 配置文件的顶级块,用于设置一些全局的参数和配置,这些配置会影响整个 Nginx 服务器的运行行为。
常见配置指令:
user:指定 Nginx 工作进程运行的用户和用户组,例如 user nginx nginx;。
worker_processes:设置 Nginx 工作进程的数量,一般根据服务器的 CPU 核心数来确定,如 worker_processes 4; 表示启动 4 个工作进程。
error_log:定义错误日志的路径和级别,如 error_log /var/log/nginx/error.log error;。
pid:指定 Nginx 主进程的进程 ID 文件的路径,例如 pid /var/run/nginx.pid;。
step 2:http 块
作用:http 块用于配置 HTTP 相关的功能和参数,包括服务器虚拟主机的定义、请求处理规则、缓存设置、日志配置等,是 Nginx 处理 HTTP 流量的核心配置部分。
常见配置指令:
server:用于定义一个虚拟主机,在其中可以配置监听端口、域名、请求处理的 location 等,例如:
access_log:配置访问日志的路径和格式,如 access_log /var/log/nginx/access.log combined;。
sendfile:设置是否启用 sendfile 功能来提高文件传输效率,如 sendfile on;。
gzip:开启或关闭 Gzip 压缩,并配置相关参数,如压缩级别、压缩的 MIME 类型等。
step 3:server 块
作用:server 块定义了一个虚拟主机,用于处理特定域名或 IP 地址的 HTTP 请求。一个 http 块中可以包含多个 server 块,每个 server 块对应一个不同的虚拟主机。
常见配置指令:
listen:指定虚拟主机监听的端口,如 listen 80; 或 listen 443 ssl; 表示监听 80 端口或 443 端口并启用 SSL。
server_name:设置虚拟主机对应的域名或 IP 地址,可以是单个域名,也可以是多个域名的列表,如 server_name example.com www.example.com;。
location:用于配置针对不同 URL 路径的请求处理规则。
step 4:location 块
作用:location 块用于根据请求的 URL 路径来匹配并处理请求,可以在 server 块内定义多个 location 块,以实现对不同路径的请求进行不同的处理。
常见配置指令:
root:指定请求的根目录,如 root /var/www/html; 表示将以该目录作为请求的根目录来查找文件。
index:设置默认的索引文件,如 index index.html index.htm; 表示当请求的路径为目录时,优先查找并返回这些索引文件。
proxy_pass:用于将请求反向代理到后端服务器,如 proxy_pass http://backend_server; 表示将请求转发到名为 backend_server 的后端服务器。
step 5:upstream 块
作用:upstream 块用于定义一组后端服务器,以便在进行反向代理或负载均衡时使用,可以在 http 块或 server 块中使用。
常见配置指令:
server:指定后端服务器的地址和端口,如 server backend1.example.com; 或 server backend2.example.com:8080;。
weight:为后端服务器设置权重,用于负载均衡时调整服务器的负载分配比例,如 server backend1.example.com weight=3; 表示该服务器的权重为 3,相对权重更高,会接收更多的请求。
step 6:stream 块
作用:stream 块用于处理 TCP 和 UDP 流量,类似于 http 块对 HTTP 流量的处理,可以定义 TCP 或 UDP 服务器、负载均衡等配置。
常见配置指令:
server:在 stream 块中定义一个 TCP 或 UDP 服务器,如 server { listen 1234; proxy_pass backend_server:5678; } 表示监听 1234 端口,并将流量代理到后端服务器的 5678 端口。
upstream:与 http 中的 upstream 类似,用于定义一组后端的 TCP 或 UDP 服务器,实现流量的负载均衡。
step 7:events 块
作用:events 块用于配置 Nginx 的事件处理模型相关的参数,主要影响 Nginx 对连接的处理方式和性能表现。
常见配置指令:
worker_connections:设置每个工作进程允许的最大连接数,例如 worker_connections 1024; 表示每个工作进程最多可以处理 1024 个并发连接。
use:指定使用的事件处理模型,如 use epoll; 表示使用 epoll 模型,不同的操作系统可能支持不同的事件处理模型,选择合适的模型可以提高性能。
二、常用的配置示例。
示例一:三节点192.168.0.90:81,192.168.0.91:81,192.168.0.92:81配置负载均衡,监听端口为80。
http {upstream backend_servers {server 192.168.0.90:81;server 192.168.0.92:81;server 192.168.0.91:81;}server {listen 80;server_name your_domain_name; # 替换为你的域名或IP地址(如果需要通过域名访问)location / {proxy_pass http://backend_servers;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;}}
}
示例二:三节点192.168.0.90:81,192.168.0.91:81,192.168.0.92:81配置负载均衡,监听端口为80,算法为加权轮询,30秒内如果有3次连接失败,停止向该服务器转发请求。
http {upstream backend_servers {server 192.168.0.90:81 weight=3 max_fails=3 fail_timeout=30s;server 192.168.0.92:81 weight=1 max_fails=3 fail_timeout=30s;server 192.168.0.91:81 weight=2 max_fails=3 fail_timeout=30s;}server {listen 80;server_name your_domain_name; # 替换为你的域名或IP地址(如果需要通过域名访问)location / {proxy_pass http://backend_servers;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;}}
}
示例三:三节点192.168.0.90:81,192.168.0.91:81,192.168.0.92:81配置负载均衡,监听端口为80;算法为加权轮询,30秒内如果有3次连接失败,停止向该服务器转发请求;开启与后端服务器的长连接。
http {upstream gdmp_servers {server 192.168.0.90:81 weight=3 max_fails=3 fail_timeout=30s;server 192.168.0.92:81 weight=1 max_fails=3 fail_timeout=30s;server 192.168.0.91:81 weight=2 max_fails=3 fail_timeout=30s; }server {listen 80;server_name your_domain_name; # 替换为你的域名或IP地址(如果需要通过域名访问)location / {#转发的后端服务器地址proxy_pass http://gdmp;#代理请求头中客户端请求的目标域名或 IP 地址和端口号proxy_set_header Host $host;#获取真实客户端 IP 地址proxy_set_header X-Real-IP $remote_addr;# 开启与后端服务器的长连接proxy_http_version 1.1;proxy_set_header Connection "";}}
}
示例四:三节点192.168.0.90:81,192.168.0.91:81,192.168.0.92:81配置负载均衡,监听端口为80;算法为加权轮询,30秒内如果有3次连接失败,停止向该服务器转发请求;开启与后端服务器的长连接,配置超时时间。
http {upstream gdmp_servers {server 192.168.0.90:81 weight=3 max_fails=3 fail_timeout=30s;server 192.168.0.92:81 weight=1 max_fails=3 fail_timeout=30s;server 192.168.0.91:81 weight=2 max_fails=3 fail_timeout=30s;# 设置连接超时时间为300秒keepalive_timeout 300s; }server {listen 80;server_name your_domain_name; # 替换为你的域名或IP地址(如果需要通过域名访问)# 设置连接后端服务器的超时时间为300秒proxy_connect_timeout 300s;# 设置从后端服务器读取数据的超时时间为300秒proxy_read_timeout 300s;# 设置向后端服务器发送数据的超时时间为300秒proxy_send_timeout 300slocation / {#转发的后端服务器地址proxy_pass http://gdmp;#代理请求头中客户端请求的目标域名或 IP 地址和端口号proxy_set_header Host $host;#获取真实客户端 IP 地址proxy_set_header X-Real-IP $remote_addr;# 开启与后端服务器的长连接proxy_http_version 1.1;proxy_set_header Connection "";}}
}
示例五:三节点192.168.0.90:81,192.168.0.91:81,192.168.0.92:81配置负载均衡,监听端口为80;算法为加权轮询,30秒内如果有3次连接失败,停止向该服务器转发请求;开启与后端服务器的长连接,配置超时时间,配置错误页面跳转,配置日志。
http {#自定义日志格式log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';# 配置访问日志,使用了名为main的日志格式access_log /var/log/nginx/access.log main;# 配置错误日志,默认日志级别error_log /var/log/nginx/error.log;upstream gdmp_servers {server 192.168.0.90:81 weight=3 max_fails=3 fail_timeout=30s;server 192.168.0.92:81 weight=1 max_fails=3 fail_timeout=30s;server 192.168.0.91:81 weight=2 max_fails=3 fail_timeout=30s;# 设置连接超时时间为300秒keepalive_timeout 300s; }server {listen 80;server_name your_domain_name; # 替换为你的域名或IP地址(如果需要通过域名访问)# 设置连接后端服务器的超时时间为300秒proxy_connect_timeout 300s;# 设置从后端服务器读取数据的超时时间为300秒proxy_read_timeout 300s;# 设置向后端服务器发送数据的超时时间为300秒proxy_send_timeout 300slocation / {#转发的后端服务器地址proxy_pass http://gdmp;#代理请求头中客户端请求的目标域名或 IP 地址和端口号proxy_set_header Host $host;#获取真实客户端 IP 地址proxy_set_header X-Real-IP $remote_addr;# 开启与后端服务器的长连接proxy_http_version 1.1;proxy_set_header Connection "";}# 配置错误页面跳转error_page 500 502 503 504 /error.html;location = /error.html {internal;root /usr/share/nginx/html;}# 配置访问日志,访问日志使用了combined这种预定义的日志格式access_log /var/log/nginx/example.com_access.log combined;# 配置错误日志,只记录警告及更严重级别的错误信息。error_log /var/log/nginx/example.com_error.log warn;}
}
示例六:三节点192.168.0.90:81,192.168.0.91:81,192.168.0.92:81配置负载均衡,监听端口为80;算法为加权轮询,30秒内如果有3次连接失败,停止向该服务器转发请求;开启与后端服务器的长连接,配置超时时间,配置错误页面跳转,配置日志,配置发送文件。
http {#自定义日志格式log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';# 配置访问日志,使用了名为main的日志格式access_log /var/log/nginx/access.log main;# 配置错误日志,默认日志级别error_log /var/log/nginx/error.log;upstream gdmp_servers {server 192.168.0.90:81 weight=3 max_fails=3 fail_timeout=30s;server 192.168.0.92:81 weight=1 max_fails=3 fail_timeout=30s;server 192.168.0.91:81 weight=2 max_fails=3 fail_timeout=30s;# 设置连接超时时间为300秒keepalive_timeout 300s; }server {listen 80;server_name your_domain_name; # 替换为你的域名或IP地址(如果需要通过域名访问)# 设置连接后端服务器的超时时间为300秒proxy_connect_timeout 300s;# 设置从后端服务器读取数据的超时时间为300秒proxy_read_timeout 300s;# 设置向后端服务器发送数据的超时时间为300秒proxy_send_timeout 300s#启用 sendfile 机制来处理文件传输sendfile on;#Nginx 会尝试将多个小的数据包合并成一个较大的数据包,然后再一次性发送给客户端tcp_nopush on;#TCP 连接上禁用 Nagle 算法tcp_nodelay on;location / {#转发的后端服务器地址proxy_pass http://gdmp;#代理请求头中客户端请求的目标域名或 IP 地址和端口号proxy_set_header Host $host;#获取真实客户端 IP 地址proxy_set_header X-Real-IP $remote_addr;# 开启与后端服务器的长连接proxy_http_version 1.1;proxy_set_header Connection "";}# 配置错误页面跳转error_page 500 502 503 504 /error.html;location = /error.html {internal;root /usr/share/nginx/html;}# 配置访问日志,访问日志使用了combined这种预定义的日志格式access_log /var/log/nginx/example.com_access.log combined;# 配置错误日志,只记录警告及更严重级别的错误信息。error_log /var/log/nginx/example.com_error.log warn;}
}
示例七:三节点192.168.0.90:81,192.168.0.91:81,192.168.0.92:81配置负载均衡,监听端口为80;算法为加权轮询,30秒内如果有3次连接失败,停止向该服务器转发请求;开启与后端服务器的长连接,配置超时时间,配置错误页面跳转,配置日志,配置发送文件,开启gzip压缩。
http {#自定义日志格式log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';# 配置访问日志,使用了名为main的日志格式access_log /var/log/nginx/access.log main;# 配置错误日志,默认日志级别error_log /var/log/nginx/error.log;upstream gdmp_servers {server 192.168.0.90:81 weight=3 max_fails=3 fail_timeout=30s;server 192.168.0.92:81 weight=1 max_fails=3 fail_timeout=30s;server 192.168.0.91:81 weight=2 max_fails=3 fail_timeout=30s;# 设置连接超时时间为300秒keepalive_timeout 300s; }server {listen 80;server_name your_domain_name; # 替换为你的域名或IP地址(如果需要通过域名访问)# 设置连接后端服务器的超时时间为300秒proxy_connect_timeout 300s;# 设置从后端服务器读取数据的超时时间为300秒proxy_read_timeout 300s;# 设置向后端服务器发送数据的超时时间为300秒proxy_send_timeout 300s#启用 sendfile 机制来处理文件传输sendfile on;#Nginx 会尝试将多个小的数据包合并成一个较大的数据包,然后再一次性发送给客户端tcp_nopush on;#TCP 连接上禁用 Nagle 算法tcp_nodelay on;location / {#转发的后端服务器地址proxy_pass http://gdmp;#代理请求头中客户端请求的目标域名或 IP 地址和端口号proxy_set_header Host $host;#获取真实客户端 IP 地址proxy_set_header X-Real-IP $remote_addr;# 开启与后端服务器的长连接proxy_http_version 1.1;proxy_set_header Connection "";}# 配置错误页面跳转error_page 500 502 503 504 /error.html;location = /error.html {internal;root /usr/share/nginx/html;}# 配置访问日志,访问日志使用了combined这种预定义的日志格式access_log /var/log/nginx/example.com_access.log combined;# 配置错误日志,只记录警告及更严重级别的错误信息。error_log /var/log/nginx/example.com_error.log warn;#开启gzipgzip on;#开启静态页面压缩gzip_static on;#特定浏览器禁用 gzip 压缩的指令,解决浏览器兼容性问题gzip_disable "MSIE [1-6].";#压缩级别5gzip_comp_level 5;#只有文件大小在 1 千字节及以上的文件才会被压缩gzip_min_length 1k;#启用4 个缓冲区来用于 gzip 压缩;每个缓冲区的大小为 16 千字节gzip_buffers 4 16k;#压缩的对象类型gzip_types text/xml text/csstext/plaintext/csvtext/javascripttext/jsontext/x-componentapplication/javascriptapplication/x-javascriptapplication/xmlapplication/jsonapplication/xhtml+xmlapplication/rss+xmlapplication/atom+xmlapplication/x-font-ttfapplication/x-web-app-manifest+jsonapplication/vnd.ms-fontobjectimage/svg+xmlimage/x-iconfont/ttffont/opentype;#不会在响应头中添加Vary: Accept-Encoding字段gzip_vary off;}
}
示例八:三节点192.168.0.90:81,192.168.0.91:81,192.168.0.92:81配置负载均衡,监听端口为80;算法为加权轮询,30秒内如果有3次连接失败,停止向该服务器转发请求;开启与后端服务器的长连接,配置超时时间,配置错误页面跳转,配置日志,配置发送文件,开启gzip压缩,配置ssl证书。
http {#自定义日志格式log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';# 配置访问日志,使用了名为main的日志格式access_log /var/log/nginx/access.log main;# 配置错误日志,默认日志级别error_log /var/log/nginx/error.log;upstream gdmp_servers {server 192.168.0.90:81 weight=3 max_fails=3 fail_timeout=30s;server 192.168.0.92:81 weight=1 max_fails=3 fail_timeout=30s;server 192.168.0.91:81 weight=2 max_fails=3 fail_timeout=30s;# 设置连接超时时间为300秒keepalive_timeout 300s; }server {listen 80;server_name your_domain_name; # 替换为你的域名或IP地址(如果需要通过域名访问)# 设置连接后端服务器的超时时间为300秒proxy_connect_timeout 300s;# 设置从后端服务器读取数据的超时时间为300秒proxy_read_timeout 300s;# 设置向后端服务器发送数据的超时时间为300秒proxy_send_timeout 300s#启用 sendfile 机制来处理文件传输sendfile on;#Nginx 会尝试将多个小的数据包合并成一个较大的数据包,然后再一次性发送给客户端tcp_nopush on;#TCP 连接上禁用 Nagle 算法tcp_nodelay on;location / {#转发的后端服务器地址proxy_pass http://gdmp;#代理请求头中客户端请求的目标域名或 IP 地址和端口号proxy_set_header Host $host;#获取真实客户端 IP 地址proxy_set_header X-Real-IP $remote_addr;# 开启与后端服务器的长连接proxy_http_version 1.1;proxy_set_header Connection "";}# 配置错误页面跳转error_page 500 502 503 504 /error.html;location = /error.html {internal;root /usr/share/nginx/html;}# 配置访问日志,访问日志使用了combined这种预定义的日志格式access_log /var/log/nginx/example.com_access.log combined;# 配置错误日志,只记录警告及更严重级别的错误信息。error_log /var/log/nginx/example.com_error.log warn;#开启gzipgzip on;#开启静态页面压缩gzip_static on;#特定浏览器禁用 gzip 压缩的指令,解决浏览器兼容性问题gzip_disable "MSIE [1-6].";#压缩级别5gzip_comp_level 5;#只有文件大小在 1 千字节及以上的文件才会被压缩gzip_min_length 1k;#启用4 个缓冲区来用于 gzip 压缩;每个缓冲区的大小为 16 千字节gzip_buffers 4 16k;#压缩的对象类型gzip_types text/xml text/csstext/plaintext/csvtext/javascripttext/jsontext/x-componentapplication/javascriptapplication/x-javascriptapplication/xmlapplication/jsonapplication/xhtml+xmlapplication/rss+xmlapplication/atom+xmlapplication/x-font-ttfapplication/x-web-app-manifest+jsonapplication/vnd.ms-fontobjectimage/svg+xmlimage/x-iconfont/ttffont/opentype;#不会在响应头中添加Vary: Accept-Encoding字段gzip_vary off;#证书路径ssl_certificate /etc/nginx/cert/gdmp.com.pem;#证书密钥路径ssl_certificate_key /etc/nginx/cert/gdmp.com.key;# SSL 会话超时时间为5分钟ssl_session_timeout 5m;#允许使用的加密算法套件ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;#指定服务器支持的 SSL/TLS 协议版本ssl_protocols TLSv1 TLSv1.1 TLSv1.2;#优先选择服务器配置的加密算法套件ssl_prefer_server_ciphers on; }
}
示例九:三节点192.168.0.90:81,192.168.0.91:81,192.168.0.92:81配置负载均衡,监听端口为80;算法为hash,30秒内如果有3次连接失败,停止向该服务器转发请求;开启与后端服务器的长连接,配置超时时间,配置错误页面跳转,配置日志,配置发送文件,开启gzip压缩,配置ssl证书。
http {#自定义日志格式log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';# 配置访问日志,使用了名为main的日志格式access_log /var/log/nginx/access.log main;# 配置错误日志,默认日志级别error_log /var/log/nginx/error.log;upstream gdmp_servers {hash $remote_addr consistent; # 通过配置一致性 hash 来防止调度异常server 192.168.0.90:81 weight=3 max_fails=3 fail_timeout=30s;server 192.168.0.92:81 weight=1 max_fails=3 fail_timeout=30s;server 192.168.0.91:81 weight=2 max_fails=3 fail_timeout=30s;# 设置连接超时时间为300秒keepalive_timeout 300s; }server {listen 80;server_name your_domain_name; # 替换为你的域名或IP地址(如果需要通过域名访问)# 设置连接后端服务器的超时时间为300秒proxy_connect_timeout 300s;# 设置从后端服务器读取数据的超时时间为300秒proxy_read_timeout 300s;# 设置向后端服务器发送数据的超时时间为300秒proxy_send_timeout 300s#启用 sendfile 机制来处理文件传输sendfile on;#Nginx 会尝试将多个小的数据包合并成一个较大的数据包,然后再一次性发送给客户端tcp_nopush on;#TCP 连接上禁用 Nagle 算法tcp_nodelay on;location / {#转发的后端服务器地址proxy_pass http://gdmp;#代理请求头中客户端请求的目标域名或 IP 地址和端口号proxy_set_header Host $host;#获取真实客户端 IP 地址proxy_set_header X-Real-IP $remote_addr;# 开启与后端服务器的长连接proxy_http_version 1.1;proxy_set_header Connection "";}# 配置错误页面跳转error_page 500 502 503 504 /error.html;location = /error.html {internal;root /usr/share/nginx/html;}# 配置访问日志,访问日志使用了combined这种预定义的日志格式access_log /var/log/nginx/example.com_access.log combined;# 配置错误日志,只记录警告及更严重级别的错误信息。error_log /var/log/nginx/example.com_error.log warn;#开启gzipgzip on;#开启静态页面压缩gzip_static on;#特定浏览器禁用 gzip 压缩的指令,解决浏览器兼容性问题gzip_disable "MSIE [1-6].";#压缩级别5gzip_comp_level 5;#只有文件大小在 1 千字节及以上的文件才会被压缩gzip_min_length 1k;#启用4 个缓冲区来用于 gzip 压缩;每个缓冲区的大小为 16 千字节gzip_buffers 4 16k;#压缩的对象类型gzip_types text/xml text/csstext/plaintext/csvtext/javascripttext/jsontext/x-componentapplication/javascriptapplication/x-javascriptapplication/xmlapplication/jsonapplication/xhtml+xmlapplication/rss+xmlapplication/atom+xmlapplication/x-font-ttfapplication/x-web-app-manifest+jsonapplication/vnd.ms-fontobjectimage/svg+xmlimage/x-iconfont/ttffont/opentype;#不会在响应头中添加Vary: Accept-Encoding字段gzip_vary off;#证书路径ssl_certificate /etc/nginx/cert/gdmp.com.pem;#证书密钥路径ssl_certificate_key /etc/nginx/cert/gdmp.com.key;# SSL 会话超时时间为5分钟ssl_session_timeout 5m;#允许使用的加密算法套件ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;#指定服务器支持的 SSL/TLS 协议版本ssl_protocols TLSv1 TLSv1.1 TLSv1.2;#优先选择服务器配置的加密算法套件ssl_prefer_server_ciphers on; }
}
备注:
proxy_connect_timeout,proxy_read_timeout ,proxy_send_timeout 只能在server或location块。
access_log,error_log指令通常应该在 http、server或 location块中使用。
sendfile 指令通常只能在 http、server 或 location 等特定的配置块中使用。
upstream 指令可以在 http 块和 server 块中使用。
stream指令可以在main 块使用,也可以在http 块之外独立的 stream 块。
证书只能在server或stream块。
gzip通常在 http或server块中使用。
相关文章:
nginx配置文件介绍及示例
一、nginx配置文件一共有main,http,server,location,upstream,stream,events7个块。 step 1: main 块 作用:main 块是 Nginx 配置文件的顶级块,用于设置一些全局的参数和配置&…...

如何在算家云搭建YOLOv5(物体检测)
一、YOLOv5简介 YOLOv5 模型是一种以实时物体检测闻名的计算机视觉模型,由 Ultralytics 开发,并于 2020 年年中发布。它是 YOLO 系列的升级版,继承了 YOLO 系列以实时物体检测能力而著称的特点。 二、模型搭建流程 1.选择模型实例 在应用…...

现场工程师日记-MSYS2迅速部署PostgreSQL主从备份数据库
文章目录 一、概要二、整体架构流程1. 安装 MSYS2 环境2. 安装postgresql 三、技术名词解释1.MSYS22.postgresql 四、技术细节1. 创建主数据库2.添加从数据库复制权限3. 按需修改参数(1)WAL保留空间(2)监听地址 4. 启动主服务器5.…...

使用Element UI实现一个拖拽图片上传,并可以Ctrl + V获取图片实现文件上传
要在 Element UI 的拖拽上传组件中实现 Ctrl V 图片上传功能,可以通过监听键盘事件来捕获粘贴操作,并将粘贴的图片数据上传到服务器。 版本V1,实现获取粘贴板中的文件 注意,本案例需要再你已经安装了Element UI并在项目中正确配…...

私域流量圈层在新消费时代的机遇与挑战:兼论开源 AI 智能名片、2 + 1 链动模式、S2B2C 商城小程序的应用
摘要:本文剖析了私域流量圈层在新消费时代呈现出的独特温度与信任优势,阐述了从传统销售到新消费转型中用户心理的变化。同时,强调了内容对于私域流量的关键作用,并分析开源 AI 智能名片、2 1 链动模式、S2B2C 商城小程序在私域流…...
vxe-vxe-colgroup后端返回数据 对数据进行处理 动态合并分组表头(v-if控制表格渲染(数据请求完成后渲染))
1.html vxe-colgroup循环合并数据;v-if控制表格渲染(数据请求完成后渲染) <template><vxe-table v-if"isTableReady" :data"tableData"><vxe-colgroup title"基本信息"><template v-for…...
ESLint 使用教程(五):从输入 eslint 命令到最终代码被处理,ESLint 中间究竟做了什么工作
前言 ESLint 是现代 JavaScript 开发中不可或缺的代码质量工具。它能够帮助开发者找到并修复代码中的问题,提升代码的可维护性。但是,你可能会好奇:从我们在终端里输入 eslint 命令到最终代码被处理,ESLint 中间究竟做了什么工作…...

【安全测试】sqlmap工具(sql注入)学习
前言:sqimap是一个开源的渗透测试工具,它可以自动化检测和利用SQL注入缺陷以及接管数据库服务器的过程。它有一个强大的检测引擎,许多适合于终极渗透测试的小众特性和广泛的开关,从数据库指纹、从数据库获 取数据到访问底层文件系…...

YOLOv11融合CVPR[2023]空间和通道重建卷积ScConv模块及相关改进思路|YOLO改进最简教程
YOLOv11v10v8使用教程: YOLOv11入门到入土使用教程 YOLOv11改进汇总贴:YOLOv11及自研模型更新汇总 《SCConv: Spatial and Channel Reconstruction Convolution for Feature Redundancy》 一、 模块介绍 论文链接:SCConv: Spatial and Cha…...
C++研发笔记13——C语言程序设计初阶学习笔记11
从今天开始我们开始第三模块《分支语句和循环语句》的学习,在本模块中我们将会涉及到以下9个内容:什么是语句、分支语句——if语言、分支语句——switch语句、循环语句——while循环、循环语句——for循环、循环语句——do while循环、折半查找算法、猜数…...
html5拖放
1、什么是拖放(Drag 和 Drop) 拖放,字面意思就是拖动,放置 在编程里面也是如此,拖放是一种常见的特性,即抓取对象以后拖到另一个位置。 在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放。…...

卫导调零天线功率倒置算法原理及MATLAB仿真
卫导调零天线功率倒置算法原理及MATLAB仿真 文章目录 前言一、调零天线简介二、功率倒置自适应算法三、MATLAB仿真四、MATLAB代码总结 前言 \;\;\;\;\; 自适应调零抗干扰技术可以很大程度改善导航抗干扰性能,也是目前导航抗干扰技术中不可或缺的,其研究意…...
【划分型 DP】力扣139. 单词拆分
给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 示例 1: 输入: s “leetcode”, wordDic…...

Python学习从0到1 day26 第三阶段 Spark ④ 数据输出
半山腰太挤了,你该去山顶看看 —— 24.11.10 一、输出为python对象 1.collect算子 功能: 将RDD各个分区内的数据,统一收集到Driver中,形成一个List对象 语法: rdd.collect() 返回值是一个list列表 示例: from …...
AWTK fscript 中的 JSON 扩展函数
fscript 是 AWTK 内置的脚本引擎,开发者可以在 UI XML 文件中直接嵌入 fscript 脚本,提高开发效率。本文介绍一下 fscript 中的 ** JSON 扩展函数 ** 1.json_load 加载 json 数据。 原型 json_load(str) > object json_load(binary) > object js…...

动态规划 —— dp 问题-买卖股票的最佳时机III
1. 买卖股票的最佳时机III 题目链接: 123. 买卖股票的最佳时机 III - 力扣(LeetCode)https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-iii/description/ 2. 题目解析 3. 算法原理 状态表示:以某一个位置为结尾或者…...

“绽放艺术风采、激发强国力量” 海南省第十一届中小学生艺术展演活动圆满开展
2024年11月1日,由省教育厅主办、琼台师范学院承办的海南省第十一届中小学生艺术展演省级展演活动在海口正式拉开帷幕。来自全省各市县、省属学校等共计4000余名师生参加本届中小学生艺术展演现场展演活动。 本届展演活动以“绽放艺术风采、激发强国力量”为主题&…...
Linux之文件和目录类命令详解(2)
Linux之文件和目录类命令详解(2) 1、mv-移动文件或重命名2、find-查找文件和目录3、locate-快速查找文件4、du-显示目录或文件的磁盘使用情况5、df-显示文件系统的磁盘空间使用情况6、chmod-更改文件或目录的权限7、chown-更改文件或目录的拥有者8、tree…...

NVR管理平台EasyNVR多品牌NVR管理工具/设备摄像头开启ONVIF的方法
NVR小程序接入平台EasyNVR作为一款功能强大的安防视频监控平台,以其出色的兼容性和灵活性,在智慧校园、智慧工厂、智慧水利等多个场景中得到了广泛应用。本文将重点介绍如何为大华摄像头开启ONVIF协议,以便与EasyNVR进行无缝对接。 大华大部分…...

Pr 视频过渡:沉浸式视频
效果面板/视频过渡/沉浸式视频 Video Transitions/Immersive Video Adobe Premiere Pro 的视频过渡效果中,沉浸式视频 Immersive Video效果组主要用于 VR 视频剪辑之间的过渡。 自动 VR 属性 Auto VR Properties是所有 VR 视频过渡效果的通用选项。 默认勾选&#x…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...

uniapp手机号一键登录保姆级教程(包含前端和后端)
目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号(第三种)后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...

【Linux系统】Linux环境变量:系统配置的隐形指挥官
。# Linux系列 文章目录 前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变量的生命周期 四、环境变量的组织方式五、C语言对环境变量的操作5.1 设置环境变量:setenv5.2 删除环境变量:unsetenv5.3 遍历所有环境…...

android RelativeLayout布局
<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...

《信号与系统》第 6 章 信号与系统的时域和频域特性
目录 6.0 引言 6.1 傅里叶变换的模和相位表示 6.2 线性时不变系统频率响应的模和相位表示 6.2.1 线性与非线性相位 6.2.2 群时延 6.2.3 对数模和相位图 6.3 理想频率选择性滤波器的时域特性 6.4 非理想滤波器的时域和频域特性讨论 6.5 一阶与二阶连续时间系统 6.5.1 …...
【深尚想】TPS54618CQRTERQ1汽车级同步降压转换器电源芯片全面解析
1. 元器件定义与技术特点 TPS54618CQRTERQ1 是德州仪器(TI)推出的一款 汽车级同步降压转换器(DC-DC开关稳压器),属于高性能电源管理芯片。核心特性包括: 输入电压范围:2.95V–6V,输…...