<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Leopard_89的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Leopard_89</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Leopard_89]]></copyright><item><title><![CDATA[Nginx是怎么接入HTTP请求的？]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/126566566</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/126566566</guid><author>Leopard_89</author><pubDate>Sun, 28 Aug 2022 12:12:19 +0800</pubDate><description><![CDATA[nginx怎么接入HTTP请求的]]></description><category></category></item><item><title><![CDATA[Nginx 用syslog传输error.log到远程服务器]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/126215036</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/126215036</guid><author>Leopard_89</author><pubDate>Sun, 07 Aug 2022 18:49:08 +0800</pubDate><description><![CDATA[nginx syslog 日志传输]]></description><category></category></item><item><title><![CDATA[python3 aes解密]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/124823960</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/124823960</guid><author>Leopard_89</author><pubDate>Tue, 17 May 2022 16:18:06 +0800</pubDate><description><![CDATA[import base64
import os
import base64
import json
import binascii

def aes_cipher(key, aes_str):
    aes = AES.new(key.encode('utf-8'), AES.MODE_ECB)
    pad_pkcs7 = pad(aes_str, AES.block_size, style='pkcs7')  # 选择pkcs7补全
    #pad_pkcs7 = pad(aes_str.enc.]]></description><category></category></item><item><title><![CDATA[linux下nginx异常启动自动拉起]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/118532597</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/118532597</guid><author>Leopard_89</author><pubDate>Wed, 07 Jul 2021 00:15:24 +0800</pubDate><description><![CDATA[# /lib/systemd/system/nginx.service # Stop dance for nginx # ======================= # # ExecStop sends SIGSTOP (graceful stop) to the nginx process. # If, after 5s (--retry QUIT/5) nginx is still running, systemd takes control # and sends SIGTERM (fast sh]]></description><category></category></item><item><title><![CDATA[Nginx利用打印内存使用信息]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/118048332</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/118048332</guid><author>Leopard_89</author><pubDate>Sat, 19 Jun 2021 11:15:39 +0800</pubDate><description><![CDATA[1. 首先编译时加入选项--with-jemalloc=libs/jemalloc-5.2.1。如果编译时遇到jemalloc的Makefile相关错误，就需要修改nginx中jemalloc对应d
]]></description><category></category></item><item><title><![CDATA[Nginx resolver 解析proxy_pass中的域名]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/113619558</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/113619558</guid><author>Leopard_89</author><pubDate>Mon, 08 Feb 2021 11:18:17 +0800</pubDate><description><![CDATA[Nginx resolver 命令定义在ngx_http_core_module，可以在http{}，server{}，location{}中配置。作用是解析proxy_pass 中配置的域名。

使用示例：


http {

    upstream test {
        server 1.1.1.1 ;
        server 2.2.2.2 ;
    }
    server {
        listen 80;
        server_name www.test.com;]]></description><category></category></item><item><title><![CDATA[Nginx reuseport 连接重复问题]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/112446348</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/112446348</guid><author>Leopard_89</author><pubDate>Sun, 10 Jan 2021 22:02:12 +0800</pubDate><description><![CDATA[现象：

用ss -tnpl 'sport = :80' 命令，发现对于同一个IP+Port，一个进程内会有多个fd与之对应。

经过修改listen 指令的参数发现是reuseport导致的。



调试

1. Gdb 调试worker进程发现listening数组中的端口被复制了。

2. 搜索代码发现在ngx_event_module中，对reuseport的端口做了特殊处理，如果是reuseport的端口，那么就给每个worker进程都复制一份，在ngx_open_listening_socke.]]></description><category></category></item><item><title><![CDATA[Nginx源码分析之变量]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/109563785</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/109563785</guid><author>Leopard_89</author><pubDate>Mon, 09 Nov 2020 10:44:20 +0800</pubDate><description><![CDATA[变量的使用示例


server {
    listen 80;
    server_name www.test.com;


    set $var1 "test";

    location ~* ^/([0-9]+)/ {
        if ($1 = 200) {
            return 200;
        }

        content_by_lua_block {
            ngx.print(ngx.var.var1)
           ]]></description><category></category></item><item><title><![CDATA[Nginx 隐藏服务器名称和版本号]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/50778477</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/50778477</guid><author>Leopard_89</author><pubDate>Wed, 02 Mar 2016 13:33:46 +0800</pubDate><description><![CDATA[初学nginx，遇到了server_tokens命令，该命令的作用是显示或隐藏掉版本号。
例如server_tokens off; 隐藏版本号。浏览器访问时抓包，查看HTTP响应的Server头没有版本号。


既然版本号可以隐藏，那可不可以隐藏或修改nginx服务器的名称呢？答案是可以，修改或隐藏服务器名称需要修改源码nginx.h，nginx.h在src/core/目录下 。具体操作如]]></description><category></category></item><item><title><![CDATA[netlink IPC]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/40982457</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/40982457</guid><author>Leopard_89</author><pubDate>Mon, 10 Nov 2014 16:22:55 +0800</pubDate><description><![CDATA[http://blog.youkuaiyun.com/max415/archive/2008/02/01/2076814.aspx原文出处
在 
linux学习2.4 版以后版本的内核中，几乎全部的中断过程与用户态进程的通信都是使用 netlink 套接字实现的，同时还使用 netlink 实现了 ip queue 工具，但 ip queue 的使用有其局限性，不能自由地用于各种中断过程。内核的帮助文档和]]></description><category></category></item><item><title><![CDATA[H3C文档NAT专题]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/40214931</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/40214931</guid><author>Leopard_89</author><pubDate>Sat, 18 Oct 2014 20:28:41 +0800</pubDate><description><![CDATA[http://www.h3c.com.cn/MiniSite/Technology_Circle/Net_Reptile/The_Five/Home/Catalog/201206/747040_97665_0.htm]]></description><category></category></item><item><title><![CDATA[动态分配二维数组 c++]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/12911605</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/12911605</guid><author>Leopard_89</author><pubDate>Mon, 21 Oct 2013 15:30:48 +0800</pubDate><description><![CDATA[int **ip = new int* [4]; // 4X4 2Dfor(int i = 0; i != 4;++i)ip[i] = new int [4];]]></description><category></category></item><item><title><![CDATA[程序员的十楼层。看看自己在第几层。PS：我的目标是：30岁第四层]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/10932857</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/10932857</guid><author>Leopard_89</author><pubDate>Mon, 02 Sep 2013 16:57:43 +0800</pubDate><description><![CDATA[自西方文艺复兴以来，中国在自然科学方面落后西方很多，软件领域也不例外。当然现在中国的许多程序员们对此可能有许多不同的意见，有些人认为中国的程序员水平远落后于西方，有些则认为中国的程序员个人能力并不比西方的程序员差，只是整个软件产业落后而已。 那么，到底中国的程序员水平比西方程序员水平差，还是中国有许多优秀的程序员达到或超过了西方程序员同等水平呢？要解决这个问题，必须先知道程序员有多少种技术层级，每]]></description><category></category></item><item><title><![CDATA[求职]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/9118767</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/9118767</guid><author>Leopard_89</author><pubDate>Tue, 18 Jun 2013 12:01:16 +0800</pubDate><description><![CDATA[北京沣泰盛世网络科技有限公司

联系人：伊老师

 

全国免费咨询电话：400-678-5673
  

智联

51job

智联

大街]]></description><category></category></item><item><title><![CDATA[C++ 虚继承]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/9072547</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/9072547</guid><author>Leopard_89</author><pubDate>Mon, 10 Jun 2013 19:59:54 +0800</pubDate><description><![CDATA[http://www.cnblogs.com/BeyondAnyTime/archive/2012/06/05/2537451.html]]></description><category></category></item><item><title><![CDATA[C++默认构造函数——深入理解]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/8985525</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/8985525</guid><author>Leopard_89</author><pubDate>Tue, 28 May 2013 16:43:53 +0800</pubDate><description><![CDATA[C++默认构造函数——深入理解
原创在这里http://blog.youkuaiyun.com/generalhking/article/details/7947989

分类： 
C/C++ 2012-09-05 21:41 
2812人阅读 评论(1)收藏
举报
错误认识1：若程序员没有自己定义无参数的构造函数，那么编译器会自动生成默认构造函数，来进行对成员函数的初始化。

错误认识2：]]></description><category></category></item><item><title><![CDATA[C++ 学习之构造函数：构造函数小结3 默认构造函数、隐式类型转换和复制构造函数]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/8985474</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/8985474</guid><author>Leopard_89</author><pubDate>Tue, 28 May 2013 16:35:41 +0800</pubDate><description><![CDATA[这是我转载的，为了自己看方便，原创在这里http://blog.youkuaiyun.com/guiyinzhou/article/details/6320362

构造函数中的这三个概念对于我这个初学者是需要时间和耐性去好好体会理解的。
对于默认构造函数，大家的第一印象好像总是认为这样的，例如有一个类A
class A{
public:
     A():a(0),b(2.09) {}
pri]]></description><category></category></item><item><title><![CDATA[CentOS 更改命令行字体大小]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/8904593</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/8904593</guid><author>Leopard_89</author><pubDate>Thu, 09 May 2013 11:29:24 +0800</pubDate><description><![CDATA[CentOS 命令行下默认字体太大了(也看个人习惯)，感觉一行打不了多少字母，看命令也费劲，在网上搜到了解决办法，http://www.jbxue.com/article/4680.html。
这里在复述一遍。我用的是第二种方法，建议用0x314
用编辑器打开grub.conf
一。vi /boot/grub/grub.conf在kernel一行添加如下命令：
nomodeset vga=]]></description><category></category></item><item><title><![CDATA[Ubuntu12.10 下 音乐播放器没声音]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/8820826</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/8820826</guid><author>Leopard_89</author><pubDate>Thu, 18 Apr 2013 20:08:42 +0800</pubDate><description><![CDATA[刚刚在笔记本上重装了Ubuntu12.10， 在Ubuntu Software Center 中 更新了各种软件，其中有Rhythembox (放音乐)和KMPLayer(放电影)。 随便点击了一首歌试了一下，发现用Rhythembox播放时没声音，用KMPlayer可以。作为音乐播放器自己的活还让别人干！ 很不爽。去网上搜索答案，有好多可能，都一一排除了：
      1、Rhythembox]]></description><category></category></item><item><title><![CDATA[Linux 下 Eclipse C/C++开发 环境配置]]></title><link>https://blog.youkuaiyun.com/Leopard_89/article/details/8799770</link><guid>https://blog.youkuaiyun.com/Leopard_89/article/details/8799770</guid><author>Leopard_89</author><pubDate>Sun, 14 Apr 2013 14:04:27 +0800</pubDate><description><![CDATA[Linux操作系统中(我的是Ubuntu)，在安装好Eclipse和CDT后，新建一个HelloWorld工程，显示错误：Launch failed. Binary not found.
解决办法参见http://blog.youkuaiyun.com/abcjennifer/article/details/7573916，Rachel_Zhang的原创博文。
建议不要自己乱动，因为你不知道会出现什么另外]]></description><category></category></item></channel></rss>