<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Nginx - 标签 - 研发日志 · R&amp;D Log</title><link>https://rd163.visword.com/tags/nginx/</link><description>Nginx - 标签 - 研发日志 · R&amp;D Log</description><generator>Hugo -- gohugo.io</generator><language>zh-CN</language><managingEditor>whutluohui@gmail.com (小智晖)</managingEditor><webMaster>whutluohui@gmail.com (小智晖)</webMaster><copyright>本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。</copyright><lastBuildDate>Fri, 28 Feb 2025 00:00:00 +0800</lastBuildDate><atom:link href="https://rd163.visword.com/tags/nginx/" rel="self" type="application/rss+xml"/><item><title>WebDAV 自建方案选型与实践</title><link>https://rd163.visword.com/posts/webdav-deploy/</link><pubDate>Fri, 28 Feb 2025 00:00:00 +0800</pubDate><author><name>小智晖</name></author><guid>https://rd163.visword.com/posts/webdav-deploy/</guid><description><![CDATA[<p>WebDAV(Web Distributed Authoring and Versioning,RFC 4918)是在 HTTP 之上扩展的一组方法(如 <code>PUT</code>、<code>PROPFIND</code>、<code>MKCOL</code>、<code>COPY</code>、<code>MOVE</code>),使得 Web 服务器可以当作可读写的网盘来用。相比 SFTP 或 NFS，它的优势在于走标准 HTTP(S) 端口、穿透代理和防火墙更友好，并且被几乎所有的笔记软件（如 Obsidian 的 Remotely Save 插件）、文件管理器（Windows 资源管理器、macOS Finder、Linux Nautilus/Dolphin）原生支持。</p>]]></description></item><item><title>使用 Certbot 为 Nginx 网站服务器设置永久免费的 HTTPS 证书</title><link>https://rd163.visword.com/posts/nginx-free-certificates-with-certbot/</link><pubDate>Mon, 13 Jan 2025 00:00:00 +0800</pubDate><author><name>小智晖</name></author><guid>https://rd163.visword.com/posts/nginx-free-certificates-with-certbot/</guid><description><![CDATA[<p>目前流行的免费 HTTPS 证书申请方案主要有两种:</p>
<ul>
<li><a href="https://github.com/acmesh-official/acme.sh" target="_blank" rel="noopener noreferrer">acme.sh</a>:采用纯 Shell 实现，拥有完善的中文文档，依赖少，适合脚本化场景。</li>
<li><a href="https://certbot.eff.org/" target="_blank" rel="noopener noreferrer">Certbot</a>:由 EFF(Electronic Frontier Foundation)维护，官方文档完善，与 Let&rsquo;s Encrypt 配套使用最为广泛。</li>
</ul>
<p>本文介绍第二种方式，即在 Nginx 上使用 Certbot 的 Webroot 模式申请并自动续签证书。</p>]]></description></item><item><title>K8s Nginx Ingress Controller 简介</title><link>https://rd163.visword.com/posts/k8s-nginx-ingress-controller/</link><pubDate>Sun, 12 Jan 2025 00:00:00 +0800</pubDate><author><name>小智晖</name></author><guid>https://rd163.visword.com/posts/k8s-nginx-ingress-controller/</guid><description>&lt;p>在 Kubernetes 集群中，Ingress 作为集群内服务对外暴露的访问接入点，几乎承载着集群内服务访问的所有流量。&lt;/p>
&lt;p>Ingress 是 Kubernetes 中的一个资源对象，用来管理集群外部访问集群内部服务的方式。通过 Ingress 资源可以配置不同的转发规则，根据 Host、URL 路径等条件，将请求路由到不同 Service 所对应的后端 Pod。&lt;/p></description></item><item><title>Nginx + PHP-FPM 部署与调优</title><link>https://rd163.visword.com/posts/php-nginx/</link><pubDate>Sun, 12 Jan 2025 00:00:00 +0800</pubDate><author><name>小智晖</name></author><guid>https://rd163.visword.com/posts/php-nginx/</guid><description><![CDATA[<p>PHP-FPM(FastCGI Process Manager)是 PHP 官方维护的 FastCGI 协议实现，自 <strong>PHP 5.3.3(2010 年 7 月发布)</strong> 起合并进 PHP 核心代码库，在此之前它只是 Andréi Nigmatulin 维护的一个独立补丁。合并后，编译 PHP 时加上 <code>--enable-fpm</code> 即可获得 <code>php-fpm</code> 二进制，SAPI(Server API)名称为 <code>fpm-fcgi</code>。源码位于 PHP 主仓库的 <code>sapi/fpm/</code> 目录，入口文件为 <a href="https://github.com/php/php-src/blob/master/sapi/fpm/fpm/fpm_main.c" target="_blank" rel="noopener noreferrer"><code>sapi/fpm/fpm/fpm_main.c</code></a>。</p>]]></description></item><item><title>Nginx 内存池机制</title><link>https://rd163.visword.com/posts/nginx-mem-pool/</link><pubDate>Sun, 12 Jan 2025 00:00:00 +0800</pubDate><author><name>小智晖</name></author><guid>https://rd163.visword.com/posts/nginx-mem-pool/</guid><description><![CDATA[<p>Nginx 的内存池设计得非常精妙，它在满足小块内存申请的同时，也处理大块内存的申请请求，同时还允许挂载自己的数据区域及对应的数据清理操作。</p>
<p>Nginx 内存池的实现主要集中在 <code>src/core/ngx_palloc.{h,c}</code> 中，一些支持函数位于 <code>src/os/unix/ngx_alloc.{h,c}</code> 中。这些支持函数主要是对原有的 <code>malloc</code> / <code>free</code> / <code>memalign</code> 等函数的封装。</p>]]></description></item><item><title>PHP + Nginx 部署模式总览</title><link>https://rd163.visword.com/posts/php-nginx-deploy/</link><pubDate>Sun, 12 Jan 2025 00:00:00 +0800</pubDate><author><name>小智晖</name></author><guid>https://rd163.visword.com/posts/php-nginx-deploy/</guid><description>&lt;p>在生产环境部署 PHP 应用时，Nginx 与 PHP-FPM(FastCGI Process Manager)的组合是最主流的方案。PHP-FPM 自 PHP 5.3.3 起就已经合并进 PHP 核心代码库(源码位于 &lt;code>sapi/fpm/&lt;/code>),通过 FastCGI 协议与 Web 服务器通信，负责管理 worker 进程池来执行 PHP 脚本。&lt;/p></description></item><item><title>集成前端 UI 与 API Server 的最佳实践</title><link>https://rd163.visword.com/posts/integrate-frontend-and-api/</link><pubDate>Sun, 12 Jan 2025 00:00:00 +0800</pubDate><author><name>小智晖</name></author><guid>https://rd163.visword.com/posts/integrate-frontend-and-api/</guid><description>&lt;p>前端 UI 与 API Server 如何「拼到一起」是每个全栈项目迟早要回答的问题。即便前后端在开发期完全独立，真正上线时也要决定：浏览器从哪里取静态资源、跨域请求如何收敛、单域还是子域、静态文件由谁托管。本文按「集成形态」为主线，梳理几种主流方案及其背后的取舍，并附上开源项目作为参考实现。&lt;/p></description></item><item><title>云原生 API 网关</title><link>https://rd163.visword.com/posts/cloud-native-api-gateway/</link><pubDate>Sun, 12 Jan 2025 00:00:00 +0800</pubDate><author><name>小智晖</name></author><guid>https://rd163.visword.com/posts/cloud-native-api-gateway/</guid><description><![CDATA[<p>在 Kubernetes 与微服务架构中，API 网关（API Gateway）是南北向流量的统一入口，承担路由、认证、限流、可观测、协议转换等职责。与 Kubernetes 原生的 <code>Ingress</code> 相比，API 网关通常提供更丰富的流量治理能力;而随着 <a href="https://gateway-api.sigs.k8s.io/" target="_blank" rel="noopener noreferrer">Gateway API</a> 成为 Ingress 的继任者，网关也越来越多地以 <code>GatewayClass</code> 实现的身份接入集群。</p>]]></description></item></channel></rss>