Site updated: 2022-11-08 12:40:58
This commit is contained in:
parent
53430dc3e3
commit
f5b51694a7
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
100
atom.xml
100
atom.xml
@ -48,18 +48,51 @@ __反向代理:__看下面原理图,就一目了然。其实客户端对代
|
|||||||
<p>配置文件中有很多 #号,该符号表示注释内容,去掉所有以 #开头的段落,精简之后的配置文件内容如下(PS:其实注释掉的地方,都是一些功能的使用代码,需要用到的时候,取消注释即可):</p>
|
<p>配置文件中有很多 #号,该符号表示注释内容,去掉所有以 #开头的段落,精简之后的配置文件内容如下(PS:其实注释掉的地方,都是一些功能的使用代码,需要用到的时候,取消注释即可):</p>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<figure class="highlight xml"><figcaption data-lang="XML"></figcaption><table><tr><td data-num="1"></td><td><pre># 主进程叫master,负责管理子进程,子进程叫worker</pre></td></tr><tr><td data-num="2"></td><td><pre># worker_processes配置项表示开启几个业务进程,一般和cpu核数有关</pre></td></tr><tr><td data-num="3"></td><td><pre>worker_processes 1;</pre></td></tr><tr><td data-num="4"></td><td><pre></pre></td></tr><tr><td data-num="5"></td><td><pre>events &#123;</pre></td></tr><tr><td data-num="6"></td><td><pre> worker_connections 1024;</pre></td></tr><tr><td data-num="7"></td><td><pre>&#125;</pre></td></tr><tr><td data-num="8"></td><td><pre></pre></td></tr><tr><td data-num="9"></td><td><pre>http &#123;</pre></td></tr><tr><td data-num="10"></td><td><pre> # include表示可以引入其他文件,此处表示引入http mime类型</pre></td></tr><tr><td data-num="11"></td><td><pre> include mime.types;</pre></td></tr><tr><td data-num="12"></td><td><pre> default_type application/octet-stream;</pre></td></tr><tr><td data-num="13"></td><td><pre> sendfile on;</pre></td></tr><tr><td data-num="14"></td><td><pre> keepalive_timeout 65;</pre></td></tr><tr><td data-num="15"></td><td><pre></pre></td></tr><tr><td data-num="16"></td><td><pre> # 虚拟主机,可以配置多个</pre></td></tr><tr><td data-num="17"></td><td><pre> server &#123;</pre></td></tr><tr><td data-num="18"></td><td><pre> listen 80;</pre></td></tr><tr><td data-num="19"></td><td><pre> server_name localhost;</pre></td></tr><tr><td data-num="20"></td><td><pre></pre></td></tr><tr><td data-num="21"></td><td><pre> location / &#123;</pre></td></tr><tr><td data-num="22"></td><td><pre> # 路径匹配之后,哪个目录下去匹配相应的网页,html是相对路径</pre></td></tr><tr><td data-num="23"></td><td><pre> root html;</pre></td></tr><tr><td data-num="24"></td><td><pre> index index.html index.htm;</pre></td></tr><tr><td data-num="25"></td><td><pre> &#125;</pre></td></tr><tr><td data-num="26"></td><td><pre></pre></td></tr><tr><td data-num="27"></td><td><pre> error_page 500 502 503 504 /50x.html;</pre></td></tr><tr><td data-num="28"></td><td><pre> location = /50x.html &#123;</pre></td></tr><tr><td data-num="29"></td><td><pre> root html;</pre></td></tr><tr><td data-num="30"></td><td><pre> &#125;</pre></td></tr><tr><td data-num="31"></td><td><pre> &#125;</pre></td></tr><tr><td data-num="32"></td><td><pre>&#125;</pre></td></tr></table></figure><p>去掉注释信息后,可以将 nginx.conf 配置文件分为三部分:</p>
|
<pre><code class="language-yaml"># 主进程叫master,负责管理子进程,子进程叫worker
|
||||||
|
# worker_processes配置项表示开启几个业务进程,一般和cpu核数有关
|
||||||
|
worker_processes 1;
|
||||||
|
|
||||||
|
events &#123;
|
||||||
|
worker_connections 1024;
|
||||||
|
&#125;
|
||||||
|
|
||||||
|
http &#123;
|
||||||
|
# include表示可以引入其他文件,此处表示引入http mime类型
|
||||||
|
include mime.types;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
sendfile on;
|
||||||
|
keepalive_timeout 65;
|
||||||
|
|
||||||
|
# 虚拟主机,可以配置多个
|
||||||
|
server &#123;
|
||||||
|
listen 80;
|
||||||
|
server_name localhost;
|
||||||
|
|
||||||
|
location / &#123;
|
||||||
|
# 路径匹配之后,哪个目录下去匹配相应的网页,html是相对路径
|
||||||
|
root html;
|
||||||
|
index index.html index.htm;
|
||||||
|
&#125;
|
||||||
|
|
||||||
|
error_page 500 502 503 504 /50x.html;
|
||||||
|
location = /50x.html &#123;
|
||||||
|
root html;
|
||||||
|
&#125;
|
||||||
|
&#125;
|
||||||
|
&#125;
|
||||||
|
</code></pre>
|
||||||
|
<p>去掉注释信息后,可以将 nginx.conf 配置文件分为三部分:</p>
|
||||||
<ol>
|
<ol>
|
||||||
<li>全局块</li>
|
<li>全局块</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">worker_processes 1;
|
<pre><code class="language-yaml">worker_processes 1;
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<p>从配置文件开始到 events 块之间的内容,主要会设置一些影响 Nginx 服务器整体运行的配置指令,主要包括:配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,进程 PID 存放路径、日志存放路径和类型以及配置文件的引入等。</p>
|
<p>从配置文件开始到 events 块之间的内容,主要会设置一些影响 Nginx 服务器整体运行的配置指令,主要包括:配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,进程 PID 存放路径、日志存放路径和类型以及配置文件的引入等。</p>
|
||||||
<p>上面这行 worker_processes 配置,是 Nginx 服务器并发处理服务的关键配置,该值越大,可以支持的并发处理量也越多,但是会受到硬件、软件等设备的约束。</p>
|
<p>上面这行 worker_processes 配置,是 Nginx 服务器并发处理服务的关键配置,该值越大,可以支持的并发处理量也越多,但是会受到硬件、软件等设备的约束。</p>
|
||||||
<ol start="2">
|
<ol start="2">
|
||||||
<li>events 块</li>
|
<li>events 块</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">events &#123;
|
<pre><code class="language-yaml">events &#123;
|
||||||
worker_connections 1024;
|
worker_connections 1024;
|
||||||
&#125;
|
&#125;
|
||||||
</code></pre>
|
</code></pre>
|
||||||
@ -68,7 +101,7 @@ __反向代理:__看下面原理图,就一目了然。其实客户端对代
|
|||||||
<ol start="3">
|
<ol start="3">
|
||||||
<li>http 块</li>
|
<li>http 块</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">http &#123;
|
<pre><code class="language-yaml">http &#123;
|
||||||
include mime.types;
|
include mime.types;
|
||||||
default_type application/octet-stream;
|
default_type application/octet-stream;
|
||||||
sendfile on;
|
sendfile on;
|
||||||
@ -98,25 +131,24 @@ __反向代理:__看下面原理图,就一目了然。其实客户端对代
|
|||||||
<ol>
|
<ol>
|
||||||
<li>location 配置规则</li>
|
<li>location 配置规则</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">location [ = | ~ | ~* | ^~ | @ ] /uri &#123;
|
<pre><code class="language-yaml">location [ = | ~ | ~* | ^~ | @ ] /uri &#123;
|
||||||
|
|
||||||
&#125;
|
&#125;
|
||||||
|
|
||||||
= :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求。
|
= :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求。
|
||||||
~:用于表示 uri 包含正则表达式,并且区分大小写。
|
~ :用于表示 uri 包含正则表达式,并且区分大小写。
|
||||||
~*:用于表示 uri 包含正则表达式,并且不区分大小写。
|
~* :用于表示 uri 包含正则表达式,并且不区分大小写。
|
||||||
^~:用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字符串匹配度最高的 location
|
^~ :用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字符串匹配度最高的location后,立即使用此 location 处理请求,而不再使用 location 块中的正则 uri 和请求字符串做匹配。
|
||||||
后,立即使用此 location 处理请求,而不再使用 location 块中的正则 uri 和请求字符串做匹配。
|
@ : &quot;@&quot; 定义一个命名的 location,使用在内部定向时,例如 error_page
|
||||||
@: &quot;@&quot; 定义一个命名的 location,使用在内部定向时,例如 error_page
|
/uri :不带任何修饰符,也表示前缀匹配,但是在正则匹配之后,如果没有正则命中,命中最长的规则
|
||||||
/uri:不带任何修饰符,也表示前缀匹配,但是在正则匹配之后,如果没有正则命中,命中最长的规则
|
/ :通用匹配,任何未匹配到其它location的请求都会匹配到,相当于switch中的default
|
||||||
/:通用匹配,任何未匹配到其它location的请求都会匹配到,相当于switch中的default
|
|
||||||
|
|
||||||
* uri没有“/”结尾时,location /abc/def可以匹配/abc/defghi请求,也可以匹配/abc/def/ghi等。而有“/”结尾时,location /abc/def/不能匹配/abc/defghi请求,只能匹配/abc/def/anything这样的请求
|
☆☆☆☆☆ uri没有“/”结尾时,location /abc/def可以匹配/abc/defghi请求,也可以匹配/abc/def/ghi等。而有“/”结尾时,location /abc/def/不能匹配/abc/defghi请求,只能匹配/abc/def/anything这样的请求
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<ol start="2">
|
<ol start="2">
|
||||||
<li>proxy_pass 配置规则</li>
|
<li>proxy_pass 配置规则</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">url结尾加上了/,相当于是绝对路径,则Nginx不会把location中匹配的路径部分加入代理uri。
|
<pre><code class="language-yaml">url结尾加上了/,相当于是绝对路径,则Nginx不会把location中匹配的路径部分加入代理uri。
|
||||||
url结尾不加/,Nginx则会把匹配的路径部分加入代理uri。
|
url结尾不加/,Nginx则会把匹配的路径部分加入代理uri。
|
||||||
|
|
||||||
情景1:
|
情景1:
|
||||||
@ -173,7 +205,7 @@ location /model &#123;
|
|||||||
&#125;
|
&#125;
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<h4 id="nginx完整配置文件"><a class="anchor" href="#nginx完整配置文件">#</a> Nginx 完整配置文件</h4>
|
<h4 id="nginx完整配置文件"><a class="anchor" href="#nginx完整配置文件">#</a> Nginx 完整配置文件</h4>
|
||||||
<pre><code class="language-conf">#user nobody;
|
<pre><code class="language-yaml">#user nobody;
|
||||||
worker_processes 1;
|
worker_processes 1;
|
||||||
|
|
||||||
#error_log logs/error.log;
|
#error_log logs/error.log;
|
||||||
@ -335,7 +367,7 @@ sudo apt-get update &amp;&amp; sudo apt-get install yarn
|
|||||||
<ul>
|
<ul>
|
||||||
<li>配置 nginx (编译 /etc/nginx/sites-available/default)</li>
|
<li>配置 nginx (编译 /etc/nginx/sites-available/default)</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">server &#123;
|
<pre><code class="language-yaml">server &#123;
|
||||||
listen 80 default_server;
|
listen 80 default_server;
|
||||||
listen [::]:80 default_server;
|
listen [::]:80 default_server;
|
||||||
|
|
||||||
@ -535,7 +567,7 @@ ls b.txt &gt;&amp; output.txt #两个表达式效果一样的
|
|||||||
<li>证书生成好并放置到 nginx 上。(证书生成方法不做介绍请自行百度)</li>
|
<li>证书生成好并放置到 nginx 上。(证书生成方法不做介绍请自行百度)</li>
|
||||||
<li>http 跳转 https 配置</li>
|
<li>http 跳转 https 配置</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">server &#123;
|
<pre><code class="language-yaml">server &#123;
|
||||||
if ($scheme = http) &#123;
|
if ($scheme = http) &#123;
|
||||||
rewrite ^(.*)$ https://$host$1 permanent;
|
rewrite ^(.*)$ https://$host$1 permanent;
|
||||||
&#125;
|
&#125;
|
||||||
@ -544,7 +576,7 @@ ls b.txt &gt;&amp; output.txt #两个表达式效果一样的
|
|||||||
<ol start="4">
|
<ol start="4">
|
||||||
<li>web 端口监听配置</li>
|
<li>web 端口监听配置</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">#极空间-web
|
<pre><code class="language-yaml">#极空间-web
|
||||||
server &#123;
|
server &#123;
|
||||||
listen 10000 ssl http2; #ipv4
|
listen 10000 ssl http2; #ipv4
|
||||||
listen [::]:10000 ssl http2; #ipv6
|
listen [::]:10000 ssl http2; #ipv6
|
||||||
@ -637,7 +669,7 @@ server &#123;
|
|||||||
<li>路径映射(由于青龙面板有 nodejs 环境,所以我把 hexo 博客的编译也放置在上面,再把 nginx 的 html 映射过来,这样就可以直接编译发布了。)<br />
|
<li>路径映射(由于青龙面板有 nodejs 环境,所以我把 hexo 博客的编译也放置在上面,再把 nginx 的 html 映射过来,这样就可以直接编译发布了。)<br />
|
||||||
<img data-src="https://file.jingxiyuan.cn/images/2022/10/24/2022-10-24-19-29-06.jpg" alt="" /></li>
|
<img data-src="https://file.jingxiyuan.cn/images/2022/10/24/2022-10-24-19-29-06.jpg" alt="" /></li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">#青龙面板装载路径
|
<pre><code class="language-yaml">#青龙面板装载路径
|
||||||
/ql/data
|
/ql/data
|
||||||
#博客装载路径(如果你不部署hexo博客可以不用配置)
|
#博客装载路径(如果你不部署hexo博客可以不用配置)
|
||||||
/root/.ssh #ssh证书文件(如果你不用把hexo推送到git上可以不用配置)
|
/root/.ssh #ssh证书文件(如果你不用把hexo推送到git上可以不用配置)
|
||||||
@ -664,13 +696,13 @@ server &#123;
|
|||||||
<code>0 */3 * * *</code></li>
|
<code>0 */3 * * *</code></li>
|
||||||
<li>环境变量</li>
|
<li>环境变量</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">名称:JD_COOKIE
|
<pre><code class="language-yaml">名称:JD_COOKIE
|
||||||
值:web京东登陆后按F12在网络tab页中的请求内查找cookie,然后复制pt_key=到pt_pin=等
|
值:web京东登陆后按F12在网络tab页中的请求内查找cookie,然后复制pt_key=到pt_pin=等
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<ul>
|
<ul>
|
||||||
<li>配置文件 (主要修改和添加以下配置)</li>
|
<li>配置文件 (主要修改和添加以下配置)</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">repo命令拉取脚本时需要拉取的文件后缀,直接写文件后缀名即可
|
<pre><code class="language-yaml">repo命令拉取脚本时需要拉取的文件后缀,直接写文件后缀名即可
|
||||||
RepoFileExtensions=&quot;js py ts&quot;
|
RepoFileExtensions=&quot;js py ts&quot;
|
||||||
钉钉(消息推送)
|
钉钉(消息推送)
|
||||||
export DD_BOT_TOKEN=
|
export DD_BOT_TOKEN=
|
||||||
@ -702,7 +734,7 @@ export JD_PAY_CONTRACT=true
|
|||||||
<ul>
|
<ul>
|
||||||
<li>依赖管理</li>
|
<li>依赖管理</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">#nodejs依赖
|
<pre><code class="language-yaml">#nodejs依赖
|
||||||
crypto-js
|
crypto-js
|
||||||
prettytable
|
prettytable
|
||||||
dotenv
|
dotenv
|
||||||
@ -795,7 +827,7 @@ curl -sS https://bootstrap.pypa.io/get-pip.py | python3
|
|||||||
<img data-src="https://file.jingxiyuan.cn/images/2022/10/21/2022-10-21-11-54-32204f14d87e95b59e.jpg" alt="" /></li>
|
<img data-src="https://file.jingxiyuan.cn/images/2022/10/21/2022-10-21-11-54-32204f14d87e95b59e.jpg" alt="" /></li>
|
||||||
</ol>
|
</ol>
|
||||||
<h4 id="修改themeshoka配置"><a class="anchor" href="#修改themeshoka配置">#</a> 修改 Theme.Shoka 配置</h4>
|
<h4 id="修改themeshoka配置"><a class="anchor" href="#修改themeshoka配置">#</a> 修改 Theme.Shoka 配置</h4>
|
||||||
<pre><code class="language-yml">valine:
|
<pre><code class="language-yaml">valine:
|
||||||
appId: 粘贴5中获取的App ID #Your_appId
|
appId: 粘贴5中获取的App ID #Your_appId
|
||||||
appKey: 粘贴5中获取的App Key #Your_appkey
|
appKey: 粘贴5中获取的App Key #Your_appkey
|
||||||
placeholder: ヽ(○´∀`)ノ♪欢迎畅所欲言 # Comment box placeholder
|
placeholder: ヽ(○´∀`)ノ♪欢迎畅所欲言 # Comment box placeholder
|
||||||
@ -859,7 +891,7 @@ curl -sS https://bootstrap.pypa.io/get-pip.py | python3
|
|||||||
<ul>
|
<ul>
|
||||||
<li>此处配置为 nginx 反向代理,配置完成后可在外网连接访问</li>
|
<li>此处配置为 nginx 反向代理,配置完成后可在外网连接访问</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">stream &#123;
|
<pre><code class="language-yaml">stream &#123;
|
||||||
|
|
||||||
#极空间-docker-mariadb
|
#极空间-docker-mariadb
|
||||||
upstream mariadb &#123;
|
upstream mariadb &#123;
|
||||||
@ -1219,7 +1251,7 @@ sudo systemctl status ndo2db.service
|
|||||||
<ol>
|
<ol>
|
||||||
<li>基础配置</li>
|
<li>基础配置</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">port 6379
|
<pre><code class="language-yaml">port 6379
|
||||||
requirepass 123456(密码,建议不设置)
|
requirepass 123456(密码,建议不设置)
|
||||||
vm-enabled no (虚拟内存,内存够的情况下可以不使用)
|
vm-enabled no (虚拟内存,内存够的情况下可以不使用)
|
||||||
maxmemory 1GB(告诉Redis当使用了多少物理内存后就开始拒绝后续的写入)
|
maxmemory 1GB(告诉Redis当使用了多少物理内存后就开始拒绝后续的写入)
|
||||||
@ -1247,7 +1279,7 @@ echo never &gt; /sys/kernel/mm/transparent_hugepage/enabled
|
|||||||
<ol start="4">
|
<ol start="4">
|
||||||
<li>客户端缓冲区限制</li>
|
<li>客户端缓冲区限制</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">客户端的输出缓冲区的限制,因为某种原因客户端从服务器读取数据的速度不够快,可用于强制断开连接(一个常见的原因是一个发布 / 订阅客户端消费消息的速度无法赶上生产它们的速度)。
|
<pre><code class="language-yaml">客户端的输出缓冲区的限制,因为某种原因客户端从服务器读取数据的速度不够快,可用于强制断开连接(一个常见的原因是一个发布 / 订阅客户端消费消息的速度无法赶上生产它们的速度)。
|
||||||
可以三种不同客户端的方式进行设置:
|
可以三种不同客户端的方式进行设置:
|
||||||
normal -&gt; 正常客户端
|
normal -&gt; 正常客户端
|
||||||
slave -&gt; slave 和 MONITOR 客户端
|
slave -&gt; slave 和 MONITOR 客户端
|
||||||
@ -1265,7 +1297,7 @@ client-output-buffer-limit pubsub 32mb 8mb 60
|
|||||||
<ol start="5">
|
<ol start="5">
|
||||||
<li>持久化配置</li>
|
<li>持久化配置</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">---关闭RDB持久化---
|
<pre><code class="language-yaml">---关闭RDB持久化---
|
||||||
save &quot;&quot;
|
save &quot;&quot;
|
||||||
默认配置如下:
|
默认配置如下:
|
||||||
save 900 1 #900秒内有1次更新就持久化
|
save 900 1 #900秒内有1次更新就持久化
|
||||||
@ -1290,7 +1322,7 @@ min-slaves-to-write 3
|
|||||||
min-slaves-max-lag 10 设置当一个master端的可用slave少于N个,延迟时间大于M秒时,不接收写操作。
|
min-slaves-max-lag 10 设置当一个master端的可用slave少于N个,延迟时间大于M秒时,不接收写操作。
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<h4 id="从服务"><a class="anchor" href="#从服务">#</a> 从服务</h4>
|
<h4 id="从服务"><a class="anchor" href="#从服务">#</a> 从服务</h4>
|
||||||
<pre><code class="language-conf">基本配置同主服务一致
|
<pre><code class="language-yaml">基本配置同主服务一致
|
||||||
slaveof 127.0.0.1 6379(主redis的ip和端口)
|
slaveof 127.0.0.1 6379(主redis的ip和端口)
|
||||||
masterauth 123456 (主redis的密码)
|
masterauth 123456 (主redis的密码)
|
||||||
可以通过slaveof no one命令将Slaver升级为Maste
|
可以通过slaveof no one命令将Slaver升级为Maste
|
||||||
@ -1331,7 +1363,7 @@ sudo sysctl vm.overcommit_memory=1
|
|||||||
<link rel="alternate" href="https://blog.jingxiyuan.cn/2022/10/14/nginx%E5%85%81%E8%AE%B8%E8%B7%A8%E5%9F%9F%E8%8E%B7%E5%8F%96cookies%E6%96%B9%E6%B3%95/"/>
|
<link rel="alternate" href="https://blog.jingxiyuan.cn/2022/10/14/nginx%E5%85%81%E8%AE%B8%E8%B7%A8%E5%9F%9F%E8%8E%B7%E5%8F%96cookies%E6%96%B9%E6%B3%95/"/>
|
||||||
<content type="html"><h4 id="使用场景"><a class="anchor" href="#使用场景">#</a> 使用场景</h4>
|
<content type="html"><h4 id="使用场景"><a class="anchor" href="#使用场景">#</a> 使用场景</h4>
|
||||||
<p> 在 A 域名的页面向 B 域名提交数据时需要代入 B 域名的 cookie,否则 B 域名会跳转到登陆页面。解决方式需要使用到 nginx 反向代理,配置如下:</p>
|
<p> 在 A 域名的页面向 B 域名提交数据时需要代入 B 域名的 cookie,否则 B 域名会跳转到登陆页面。解决方式需要使用到 nginx 反向代理,配置如下:</p>
|
||||||
<pre><code class="language-conf">server &#123;
|
<pre><code class="language-yaml">server &#123;
|
||||||
listen port ssl http2;
|
listen port ssl http2;
|
||||||
server_name xxx.com;
|
server_name xxx.com;
|
||||||
ssl_certificate_key /xxx.key;
|
ssl_certificate_key /xxx.key;
|
||||||
@ -1469,7 +1501,7 @@ X-Frame-Options 三个参数:</p>
|
|||||||
<li>轮询(默认)</li>
|
<li>轮询(默认)</li>
|
||||||
</ol>
|
</ol>
|
||||||
<p> <em>每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。</em></p>
|
<p> <em>每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。</em></p>
|
||||||
<pre><code class="language-conf">upstream my_server &#123;
|
<pre><code class="language-yaml">upstream my_server &#123;
|
||||||
server 192.168.0.2:8080;
|
server 192.168.0.2:8080;
|
||||||
server 192.168.0.3:8080;
|
server 192.168.0.3:8080;
|
||||||
&#125;
|
&#125;
|
||||||
@ -1489,7 +1521,7 @@ server &#123;
|
|||||||
<li>weight 权重策略</li>
|
<li>weight 权重策略</li>
|
||||||
</ol>
|
</ol>
|
||||||
<p> <em>weight 代表权重,默认为 1,权重越高被分配的客户端越多,指定轮询几率。weight 和访问比率成正比,用于后端服务器性能不均的情况。</em></p>
|
<p> <em>weight 代表权重,默认为 1,权重越高被分配的客户端越多,指定轮询几率。weight 和访问比率成正比,用于后端服务器性能不均的情况。</em></p>
|
||||||
<pre><code class="language-conf">upstream my_server &#123;
|
<pre><code class="language-yaml">upstream my_server &#123;
|
||||||
server 192.168.0.2:8080 weight=1;
|
server 192.168.0.2:8080 weight=1;
|
||||||
server 192.168.0.3:8080 weight=2;
|
server 192.168.0.3:8080 weight=2;
|
||||||
&#125;
|
&#125;
|
||||||
@ -1509,7 +1541,7 @@ server &#123;
|
|||||||
<li>ip_hash</li>
|
<li>ip_hash</li>
|
||||||
</ol>
|
</ol>
|
||||||
<p> <em>每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session 的问题。</em></p>
|
<p> <em>每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session 的问题。</em></p>
|
||||||
<pre><code class="language-conf">upstream my_server &#123;
|
<pre><code class="language-yaml">upstream my_server &#123;
|
||||||
ip_hash;
|
ip_hash;
|
||||||
server 192.168.0.2:8080;
|
server 192.168.0.2:8080;
|
||||||
server 192.168.0.3:8080;
|
server 192.168.0.3:8080;
|
||||||
@ -1530,7 +1562,7 @@ server &#123;
|
|||||||
<li>fair (第三方)</li>
|
<li>fair (第三方)</li>
|
||||||
</ol>
|
</ol>
|
||||||
<p> <em>按后端服务器的响应时间来分配请求,响应时间短的优先分配。</em></p>
|
<p> <em>按后端服务器的响应时间来分配请求,响应时间短的优先分配。</em></p>
|
||||||
<pre><code class="language-conf">upstream my_server &#123;
|
<pre><code class="language-yaml">upstream my_server &#123;
|
||||||
server 192.168.0.2:8080;
|
server 192.168.0.2:8080;
|
||||||
server 192.168.0.3:8080;
|
server 192.168.0.3:8080;
|
||||||
fair;
|
fair;
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
100
rss.xml
100
rss.xml
@ -57,18 +57,51 @@ __反向代理:__看下面原理图,就一目了然。其实客户端对代
|
|||||||
<p>配置文件中有很多 #号,该符号表示注释内容,去掉所有以 #开头的段落,精简之后的配置文件内容如下(PS:其实注释掉的地方,都是一些功能的使用代码,需要用到的时候,取消注释即可):</p>
|
<p>配置文件中有很多 #号,该符号表示注释内容,去掉所有以 #开头的段落,精简之后的配置文件内容如下(PS:其实注释掉的地方,都是一些功能的使用代码,需要用到的时候,取消注释即可):</p>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<figure class="highlight xml"><figcaption data-lang="XML"></figcaption><table><tr><td data-num="1"></td><td><pre># 主进程叫master,负责管理子进程,子进程叫worker</pre></td></tr><tr><td data-num="2"></td><td><pre># worker_processes配置项表示开启几个业务进程,一般和cpu核数有关</pre></td></tr><tr><td data-num="3"></td><td><pre>worker_processes 1;</pre></td></tr><tr><td data-num="4"></td><td><pre></pre></td></tr><tr><td data-num="5"></td><td><pre>events &#123;</pre></td></tr><tr><td data-num="6"></td><td><pre> worker_connections 1024;</pre></td></tr><tr><td data-num="7"></td><td><pre>&#125;</pre></td></tr><tr><td data-num="8"></td><td><pre></pre></td></tr><tr><td data-num="9"></td><td><pre>http &#123;</pre></td></tr><tr><td data-num="10"></td><td><pre> # include表示可以引入其他文件,此处表示引入http mime类型</pre></td></tr><tr><td data-num="11"></td><td><pre> include mime.types;</pre></td></tr><tr><td data-num="12"></td><td><pre> default_type application/octet-stream;</pre></td></tr><tr><td data-num="13"></td><td><pre> sendfile on;</pre></td></tr><tr><td data-num="14"></td><td><pre> keepalive_timeout 65;</pre></td></tr><tr><td data-num="15"></td><td><pre></pre></td></tr><tr><td data-num="16"></td><td><pre> # 虚拟主机,可以配置多个</pre></td></tr><tr><td data-num="17"></td><td><pre> server &#123;</pre></td></tr><tr><td data-num="18"></td><td><pre> listen 80;</pre></td></tr><tr><td data-num="19"></td><td><pre> server_name localhost;</pre></td></tr><tr><td data-num="20"></td><td><pre></pre></td></tr><tr><td data-num="21"></td><td><pre> location / &#123;</pre></td></tr><tr><td data-num="22"></td><td><pre> # 路径匹配之后,哪个目录下去匹配相应的网页,html是相对路径</pre></td></tr><tr><td data-num="23"></td><td><pre> root html;</pre></td></tr><tr><td data-num="24"></td><td><pre> index index.html index.htm;</pre></td></tr><tr><td data-num="25"></td><td><pre> &#125;</pre></td></tr><tr><td data-num="26"></td><td><pre></pre></td></tr><tr><td data-num="27"></td><td><pre> error_page 500 502 503 504 /50x.html;</pre></td></tr><tr><td data-num="28"></td><td><pre> location = /50x.html &#123;</pre></td></tr><tr><td data-num="29"></td><td><pre> root html;</pre></td></tr><tr><td data-num="30"></td><td><pre> &#125;</pre></td></tr><tr><td data-num="31"></td><td><pre> &#125;</pre></td></tr><tr><td data-num="32"></td><td><pre>&#125;</pre></td></tr></table></figure><p>去掉注释信息后,可以将 nginx.conf 配置文件分为三部分:</p>
|
<pre><code class="language-yaml"># 主进程叫master,负责管理子进程,子进程叫worker
|
||||||
|
# worker_processes配置项表示开启几个业务进程,一般和cpu核数有关
|
||||||
|
worker_processes 1;
|
||||||
|
|
||||||
|
events &#123;
|
||||||
|
worker_connections 1024;
|
||||||
|
&#125;
|
||||||
|
|
||||||
|
http &#123;
|
||||||
|
# include表示可以引入其他文件,此处表示引入http mime类型
|
||||||
|
include mime.types;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
sendfile on;
|
||||||
|
keepalive_timeout 65;
|
||||||
|
|
||||||
|
# 虚拟主机,可以配置多个
|
||||||
|
server &#123;
|
||||||
|
listen 80;
|
||||||
|
server_name localhost;
|
||||||
|
|
||||||
|
location / &#123;
|
||||||
|
# 路径匹配之后,哪个目录下去匹配相应的网页,html是相对路径
|
||||||
|
root html;
|
||||||
|
index index.html index.htm;
|
||||||
|
&#125;
|
||||||
|
|
||||||
|
error_page 500 502 503 504 /50x.html;
|
||||||
|
location = /50x.html &#123;
|
||||||
|
root html;
|
||||||
|
&#125;
|
||||||
|
&#125;
|
||||||
|
&#125;
|
||||||
|
</code></pre>
|
||||||
|
<p>去掉注释信息后,可以将 nginx.conf 配置文件分为三部分:</p>
|
||||||
<ol>
|
<ol>
|
||||||
<li>全局块</li>
|
<li>全局块</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">worker_processes 1;
|
<pre><code class="language-yaml">worker_processes 1;
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<p>从配置文件开始到 events 块之间的内容,主要会设置一些影响 Nginx 服务器整体运行的配置指令,主要包括:配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,进程 PID 存放路径、日志存放路径和类型以及配置文件的引入等。</p>
|
<p>从配置文件开始到 events 块之间的内容,主要会设置一些影响 Nginx 服务器整体运行的配置指令,主要包括:配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,进程 PID 存放路径、日志存放路径和类型以及配置文件的引入等。</p>
|
||||||
<p>上面这行 worker_processes 配置,是 Nginx 服务器并发处理服务的关键配置,该值越大,可以支持的并发处理量也越多,但是会受到硬件、软件等设备的约束。</p>
|
<p>上面这行 worker_processes 配置,是 Nginx 服务器并发处理服务的关键配置,该值越大,可以支持的并发处理量也越多,但是会受到硬件、软件等设备的约束。</p>
|
||||||
<ol start="2">
|
<ol start="2">
|
||||||
<li>events 块</li>
|
<li>events 块</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">events &#123;
|
<pre><code class="language-yaml">events &#123;
|
||||||
worker_connections 1024;
|
worker_connections 1024;
|
||||||
&#125;
|
&#125;
|
||||||
</code></pre>
|
</code></pre>
|
||||||
@ -77,7 +110,7 @@ __反向代理:__看下面原理图,就一目了然。其实客户端对代
|
|||||||
<ol start="3">
|
<ol start="3">
|
||||||
<li>http 块</li>
|
<li>http 块</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">http &#123;
|
<pre><code class="language-yaml">http &#123;
|
||||||
include mime.types;
|
include mime.types;
|
||||||
default_type application/octet-stream;
|
default_type application/octet-stream;
|
||||||
sendfile on;
|
sendfile on;
|
||||||
@ -107,25 +140,24 @@ __反向代理:__看下面原理图,就一目了然。其实客户端对代
|
|||||||
<ol>
|
<ol>
|
||||||
<li>location 配置规则</li>
|
<li>location 配置规则</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">location [ = | ~ | ~* | ^~ | @ ] /uri &#123;
|
<pre><code class="language-yaml">location [ = | ~ | ~* | ^~ | @ ] /uri &#123;
|
||||||
|
|
||||||
&#125;
|
&#125;
|
||||||
|
|
||||||
= :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求。
|
= :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配成功,就停止继续向下搜索并立即处理该请求。
|
||||||
~:用于表示 uri 包含正则表达式,并且区分大小写。
|
~ :用于表示 uri 包含正则表达式,并且区分大小写。
|
||||||
~*:用于表示 uri 包含正则表达式,并且不区分大小写。
|
~* :用于表示 uri 包含正则表达式,并且不区分大小写。
|
||||||
^~:用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字符串匹配度最高的 location
|
^~ :用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字符串匹配度最高的location后,立即使用此 location 处理请求,而不再使用 location 块中的正则 uri 和请求字符串做匹配。
|
||||||
后,立即使用此 location 处理请求,而不再使用 location 块中的正则 uri 和请求字符串做匹配。
|
@ : &quot;@&quot; 定义一个命名的 location,使用在内部定向时,例如 error_page
|
||||||
@: &quot;@&quot; 定义一个命名的 location,使用在内部定向时,例如 error_page
|
/uri :不带任何修饰符,也表示前缀匹配,但是在正则匹配之后,如果没有正则命中,命中最长的规则
|
||||||
/uri:不带任何修饰符,也表示前缀匹配,但是在正则匹配之后,如果没有正则命中,命中最长的规则
|
/ :通用匹配,任何未匹配到其它location的请求都会匹配到,相当于switch中的default
|
||||||
/:通用匹配,任何未匹配到其它location的请求都会匹配到,相当于switch中的default
|
|
||||||
|
|
||||||
* uri没有“/”结尾时,location /abc/def可以匹配/abc/defghi请求,也可以匹配/abc/def/ghi等。而有“/”结尾时,location /abc/def/不能匹配/abc/defghi请求,只能匹配/abc/def/anything这样的请求
|
☆☆☆☆☆ uri没有“/”结尾时,location /abc/def可以匹配/abc/defghi请求,也可以匹配/abc/def/ghi等。而有“/”结尾时,location /abc/def/不能匹配/abc/defghi请求,只能匹配/abc/def/anything这样的请求
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<ol start="2">
|
<ol start="2">
|
||||||
<li>proxy_pass 配置规则</li>
|
<li>proxy_pass 配置规则</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">url结尾加上了/,相当于是绝对路径,则Nginx不会把location中匹配的路径部分加入代理uri。
|
<pre><code class="language-yaml">url结尾加上了/,相当于是绝对路径,则Nginx不会把location中匹配的路径部分加入代理uri。
|
||||||
url结尾不加/,Nginx则会把匹配的路径部分加入代理uri。
|
url结尾不加/,Nginx则会把匹配的路径部分加入代理uri。
|
||||||
|
|
||||||
情景1:
|
情景1:
|
||||||
@ -182,7 +214,7 @@ location /model &#123;
|
|||||||
&#125;
|
&#125;
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<h4 id="nginx完整配置文件"><a class="anchor" href="#nginx完整配置文件">#</a> Nginx 完整配置文件</h4>
|
<h4 id="nginx完整配置文件"><a class="anchor" href="#nginx完整配置文件">#</a> Nginx 完整配置文件</h4>
|
||||||
<pre><code class="language-conf">#user nobody;
|
<pre><code class="language-yaml">#user nobody;
|
||||||
worker_processes 1;
|
worker_processes 1;
|
||||||
|
|
||||||
#error_log logs/error.log;
|
#error_log logs/error.log;
|
||||||
@ -344,7 +376,7 @@ sudo apt-get update &amp;&amp; sudo apt-get install yarn
|
|||||||
<ul>
|
<ul>
|
||||||
<li>配置 nginx (编译 /etc/nginx/sites-available/default)</li>
|
<li>配置 nginx (编译 /etc/nginx/sites-available/default)</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">server &#123;
|
<pre><code class="language-yaml">server &#123;
|
||||||
listen 80 default_server;
|
listen 80 default_server;
|
||||||
listen [::]:80 default_server;
|
listen [::]:80 default_server;
|
||||||
|
|
||||||
@ -544,7 +576,7 @@ ls b.txt &gt;&amp; output.txt #两个表达式效果一样的
|
|||||||
<li>证书生成好并放置到 nginx 上。(证书生成方法不做介绍请自行百度)</li>
|
<li>证书生成好并放置到 nginx 上。(证书生成方法不做介绍请自行百度)</li>
|
||||||
<li>http 跳转 https 配置</li>
|
<li>http 跳转 https 配置</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">server &#123;
|
<pre><code class="language-yaml">server &#123;
|
||||||
if ($scheme = http) &#123;
|
if ($scheme = http) &#123;
|
||||||
rewrite ^(.*)$ https://$host$1 permanent;
|
rewrite ^(.*)$ https://$host$1 permanent;
|
||||||
&#125;
|
&#125;
|
||||||
@ -553,7 +585,7 @@ ls b.txt &gt;&amp; output.txt #两个表达式效果一样的
|
|||||||
<ol start="4">
|
<ol start="4">
|
||||||
<li>web 端口监听配置</li>
|
<li>web 端口监听配置</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">#极空间-web
|
<pre><code class="language-yaml">#极空间-web
|
||||||
server &#123;
|
server &#123;
|
||||||
listen 10000 ssl http2; #ipv4
|
listen 10000 ssl http2; #ipv4
|
||||||
listen [::]:10000 ssl http2; #ipv6
|
listen [::]:10000 ssl http2; #ipv6
|
||||||
@ -646,7 +678,7 @@ server &#123;
|
|||||||
<li>路径映射(由于青龙面板有 nodejs 环境,所以我把 hexo 博客的编译也放置在上面,再把 nginx 的 html 映射过来,这样就可以直接编译发布了。)<br />
|
<li>路径映射(由于青龙面板有 nodejs 环境,所以我把 hexo 博客的编译也放置在上面,再把 nginx 的 html 映射过来,这样就可以直接编译发布了。)<br />
|
||||||
<img data-src="https://file.jingxiyuan.cn/images/2022/10/24/2022-10-24-19-29-06.jpg" alt="" /></li>
|
<img data-src="https://file.jingxiyuan.cn/images/2022/10/24/2022-10-24-19-29-06.jpg" alt="" /></li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">#青龙面板装载路径
|
<pre><code class="language-yaml">#青龙面板装载路径
|
||||||
/ql/data
|
/ql/data
|
||||||
#博客装载路径(如果你不部署hexo博客可以不用配置)
|
#博客装载路径(如果你不部署hexo博客可以不用配置)
|
||||||
/root/.ssh #ssh证书文件(如果你不用把hexo推送到git上可以不用配置)
|
/root/.ssh #ssh证书文件(如果你不用把hexo推送到git上可以不用配置)
|
||||||
@ -673,13 +705,13 @@ server &#123;
|
|||||||
<code>0 */3 * * *</code></li>
|
<code>0 */3 * * *</code></li>
|
||||||
<li>环境变量</li>
|
<li>环境变量</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">名称:JD_COOKIE
|
<pre><code class="language-yaml">名称:JD_COOKIE
|
||||||
值:web京东登陆后按F12在网络tab页中的请求内查找cookie,然后复制pt_key=到pt_pin=等
|
值:web京东登陆后按F12在网络tab页中的请求内查找cookie,然后复制pt_key=到pt_pin=等
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<ul>
|
<ul>
|
||||||
<li>配置文件 (主要修改和添加以下配置)</li>
|
<li>配置文件 (主要修改和添加以下配置)</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">repo命令拉取脚本时需要拉取的文件后缀,直接写文件后缀名即可
|
<pre><code class="language-yaml">repo命令拉取脚本时需要拉取的文件后缀,直接写文件后缀名即可
|
||||||
RepoFileExtensions=&quot;js py ts&quot;
|
RepoFileExtensions=&quot;js py ts&quot;
|
||||||
钉钉(消息推送)
|
钉钉(消息推送)
|
||||||
export DD_BOT_TOKEN=
|
export DD_BOT_TOKEN=
|
||||||
@ -711,7 +743,7 @@ export JD_PAY_CONTRACT=true
|
|||||||
<ul>
|
<ul>
|
||||||
<li>依赖管理</li>
|
<li>依赖管理</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">#nodejs依赖
|
<pre><code class="language-yaml">#nodejs依赖
|
||||||
crypto-js
|
crypto-js
|
||||||
prettytable
|
prettytable
|
||||||
dotenv
|
dotenv
|
||||||
@ -807,7 +839,7 @@ curl -sS https://bootstrap.pypa.io/get-pip.py | python3
|
|||||||
<img data-src="https://file.jingxiyuan.cn/images/2022/10/21/2022-10-21-11-54-32204f14d87e95b59e.jpg" alt="" /></li>
|
<img data-src="https://file.jingxiyuan.cn/images/2022/10/21/2022-10-21-11-54-32204f14d87e95b59e.jpg" alt="" /></li>
|
||||||
</ol>
|
</ol>
|
||||||
<h4 id="修改themeshoka配置"><a class="anchor" href="#修改themeshoka配置">#</a> 修改 Theme.Shoka 配置</h4>
|
<h4 id="修改themeshoka配置"><a class="anchor" href="#修改themeshoka配置">#</a> 修改 Theme.Shoka 配置</h4>
|
||||||
<pre><code class="language-yml">valine:
|
<pre><code class="language-yaml">valine:
|
||||||
appId: 粘贴5中获取的App ID #Your_appId
|
appId: 粘贴5中获取的App ID #Your_appId
|
||||||
appKey: 粘贴5中获取的App Key #Your_appkey
|
appKey: 粘贴5中获取的App Key #Your_appkey
|
||||||
placeholder: ヽ(○´∀`)ノ♪欢迎畅所欲言 # Comment box placeholder
|
placeholder: ヽ(○´∀`)ノ♪欢迎畅所欲言 # Comment box placeholder
|
||||||
@ -869,7 +901,7 @@ curl -sS https://bootstrap.pypa.io/get-pip.py | python3
|
|||||||
<ul>
|
<ul>
|
||||||
<li>此处配置为 nginx 反向代理,配置完成后可在外网连接访问</li>
|
<li>此处配置为 nginx 反向代理,配置完成后可在外网连接访问</li>
|
||||||
</ul>
|
</ul>
|
||||||
<pre><code class="language-conf">stream &#123;
|
<pre><code class="language-yaml">stream &#123;
|
||||||
|
|
||||||
#极空间-docker-mariadb
|
#极空间-docker-mariadb
|
||||||
upstream mariadb &#123;
|
upstream mariadb &#123;
|
||||||
@ -1226,7 +1258,7 @@ sudo systemctl status ndo2db.service
|
|||||||
<ol>
|
<ol>
|
||||||
<li>基础配置</li>
|
<li>基础配置</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">port 6379
|
<pre><code class="language-yaml">port 6379
|
||||||
requirepass 123456(密码,建议不设置)
|
requirepass 123456(密码,建议不设置)
|
||||||
vm-enabled no (虚拟内存,内存够的情况下可以不使用)
|
vm-enabled no (虚拟内存,内存够的情况下可以不使用)
|
||||||
maxmemory 1GB(告诉Redis当使用了多少物理内存后就开始拒绝后续的写入)
|
maxmemory 1GB(告诉Redis当使用了多少物理内存后就开始拒绝后续的写入)
|
||||||
@ -1254,7 +1286,7 @@ echo never &gt; /sys/kernel/mm/transparent_hugepage/enabled
|
|||||||
<ol start="4">
|
<ol start="4">
|
||||||
<li>客户端缓冲区限制</li>
|
<li>客户端缓冲区限制</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">客户端的输出缓冲区的限制,因为某种原因客户端从服务器读取数据的速度不够快,可用于强制断开连接(一个常见的原因是一个发布 / 订阅客户端消费消息的速度无法赶上生产它们的速度)。
|
<pre><code class="language-yaml">客户端的输出缓冲区的限制,因为某种原因客户端从服务器读取数据的速度不够快,可用于强制断开连接(一个常见的原因是一个发布 / 订阅客户端消费消息的速度无法赶上生产它们的速度)。
|
||||||
可以三种不同客户端的方式进行设置:
|
可以三种不同客户端的方式进行设置:
|
||||||
normal -&gt; 正常客户端
|
normal -&gt; 正常客户端
|
||||||
slave -&gt; slave 和 MONITOR 客户端
|
slave -&gt; slave 和 MONITOR 客户端
|
||||||
@ -1272,7 +1304,7 @@ client-output-buffer-limit pubsub 32mb 8mb 60
|
|||||||
<ol start="5">
|
<ol start="5">
|
||||||
<li>持久化配置</li>
|
<li>持久化配置</li>
|
||||||
</ol>
|
</ol>
|
||||||
<pre><code class="language-conf">---关闭RDB持久化---
|
<pre><code class="language-yaml">---关闭RDB持久化---
|
||||||
save &quot;&quot;
|
save &quot;&quot;
|
||||||
默认配置如下:
|
默认配置如下:
|
||||||
save 900 1 #900秒内有1次更新就持久化
|
save 900 1 #900秒内有1次更新就持久化
|
||||||
@ -1297,7 +1329,7 @@ min-slaves-to-write 3
|
|||||||
min-slaves-max-lag 10 设置当一个master端的可用slave少于N个,延迟时间大于M秒时,不接收写操作。
|
min-slaves-max-lag 10 设置当一个master端的可用slave少于N个,延迟时间大于M秒时,不接收写操作。
|
||||||
</code></pre>
|
</code></pre>
|
||||||
<h4 id="从服务"><a class="anchor" href="#从服务">#</a> 从服务</h4>
|
<h4 id="从服务"><a class="anchor" href="#从服务">#</a> 从服务</h4>
|
||||||
<pre><code class="language-conf">基本配置同主服务一致
|
<pre><code class="language-yaml">基本配置同主服务一致
|
||||||
slaveof 127.0.0.1 6379(主redis的ip和端口)
|
slaveof 127.0.0.1 6379(主redis的ip和端口)
|
||||||
masterauth 123456 (主redis的密码)
|
masterauth 123456 (主redis的密码)
|
||||||
可以通过slaveof no one命令将Slaver升级为Maste
|
可以通过slaveof no one命令将Slaver升级为Maste
|
||||||
@ -1341,7 +1373,7 @@ sudo sysctl vm.overcommit_memory=1
|
|||||||
<pubDate>Fri, 14 Oct 2022 17:13:00 +0800</pubDate>
|
<pubDate>Fri, 14 Oct 2022 17:13:00 +0800</pubDate>
|
||||||
<description><![CDATA[ <h4 id="使用场景"><a class="anchor" href="#使用场景">#</a> 使用场景</h4>
|
<description><![CDATA[ <h4 id="使用场景"><a class="anchor" href="#使用场景">#</a> 使用场景</h4>
|
||||||
<p> 在 A 域名的页面向 B 域名提交数据时需要代入 B 域名的 cookie,否则 B 域名会跳转到登陆页面。解决方式需要使用到 nginx 反向代理,配置如下:</p>
|
<p> 在 A 域名的页面向 B 域名提交数据时需要代入 B 域名的 cookie,否则 B 域名会跳转到登陆页面。解决方式需要使用到 nginx 反向代理,配置如下:</p>
|
||||||
<pre><code class="language-conf">server &#123;
|
<pre><code class="language-yaml">server &#123;
|
||||||
listen port ssl http2;
|
listen port ssl http2;
|
||||||
server_name xxx.com;
|
server_name xxx.com;
|
||||||
ssl_certificate_key /xxx.key;
|
ssl_certificate_key /xxx.key;
|
||||||
@ -1478,7 +1510,7 @@ X-Frame-Options 三个参数:</p>
|
|||||||
<li>轮询(默认)</li>
|
<li>轮询(默认)</li>
|
||||||
</ol>
|
</ol>
|
||||||
<p> <em>每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。</em></p>
|
<p> <em>每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。</em></p>
|
||||||
<pre><code class="language-conf">upstream my_server &#123;
|
<pre><code class="language-yaml">upstream my_server &#123;
|
||||||
server 192.168.0.2:8080;
|
server 192.168.0.2:8080;
|
||||||
server 192.168.0.3:8080;
|
server 192.168.0.3:8080;
|
||||||
&#125;
|
&#125;
|
||||||
@ -1498,7 +1530,7 @@ server &#123;
|
|||||||
<li>weight 权重策略</li>
|
<li>weight 权重策略</li>
|
||||||
</ol>
|
</ol>
|
||||||
<p> <em>weight 代表权重,默认为 1,权重越高被分配的客户端越多,指定轮询几率。weight 和访问比率成正比,用于后端服务器性能不均的情况。</em></p>
|
<p> <em>weight 代表权重,默认为 1,权重越高被分配的客户端越多,指定轮询几率。weight 和访问比率成正比,用于后端服务器性能不均的情况。</em></p>
|
||||||
<pre><code class="language-conf">upstream my_server &#123;
|
<pre><code class="language-yaml">upstream my_server &#123;
|
||||||
server 192.168.0.2:8080 weight=1;
|
server 192.168.0.2:8080 weight=1;
|
||||||
server 192.168.0.3:8080 weight=2;
|
server 192.168.0.3:8080 weight=2;
|
||||||
&#125;
|
&#125;
|
||||||
@ -1518,7 +1550,7 @@ server &#123;
|
|||||||
<li>ip_hash</li>
|
<li>ip_hash</li>
|
||||||
</ol>
|
</ol>
|
||||||
<p> <em>每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session 的问题。</em></p>
|
<p> <em>每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session 的问题。</em></p>
|
||||||
<pre><code class="language-conf">upstream my_server &#123;
|
<pre><code class="language-yaml">upstream my_server &#123;
|
||||||
ip_hash;
|
ip_hash;
|
||||||
server 192.168.0.2:8080;
|
server 192.168.0.2:8080;
|
||||||
server 192.168.0.3:8080;
|
server 192.168.0.3:8080;
|
||||||
@ -1539,7 +1571,7 @@ server &#123;
|
|||||||
<li>fair (第三方)</li>
|
<li>fair (第三方)</li>
|
||||||
</ol>
|
</ol>
|
||||||
<p> <em>按后端服务器的响应时间来分配请求,响应时间短的优先分配。</em></p>
|
<p> <em>按后端服务器的响应时间来分配请求,响应时间短的优先分配。</em></p>
|
||||||
<pre><code class="language-conf">upstream my_server &#123;
|
<pre><code class="language-yaml">upstream my_server &#123;
|
||||||
server 192.168.0.2:8080;
|
server 192.168.0.2:8080;
|
||||||
server 192.168.0.3:8080;
|
server 192.168.0.3:8080;
|
||||||
fair;
|
fair;
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user