golang / go

The Go programming language
https://go.dev
BSD 3-Clause "New" or "Revised" License
123k stars 17.53k forks source link

call request.FormFile() Upload special files. Will cause the service to crash without any error messages #43708

Closed cloudmer closed 3 years ago

cloudmer commented 3 years ago

What version of Go are you using (go version)?

$ go version
go version go1.14.5 linux/amd64

Does this issue reproduce with the latest release?

Yes, There is still no solution

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE="on"
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/cloud/.cache/go-build"
GOENV="/home/cloud/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/cloud/work/golang"
GOPRIVATE=""
GOPROXY="https://goproxy.cn"
GOROOT="/usr/local/share/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/share/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/dev/null"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build788491564=/tmp/go-build -gno-record-gcc-switches"

What did you do?

I'm using the HTTP service. use gin https://github.com/gin-gonic/gin I found that it had nothing to do with gin

I'm uploading a special file.

func Upload(ctx *gin.Context)  {
    file, err := ctx.FormFile("file")
    if err != nil {
        ctx.JSON(http.StatusOK, response.Error(err))
        return
    }
    fmt.Println(file, err)
        ctx.JSON(http.StatusOK, response.Success("ok", nil))
    return
}

he service didn't respond after I uploaded it.

And the service seems to be all right, no error prompt, no crash error prompt, it seems to be all right!!!

When I access this interface for the second time, return Error: connect ECONNREFUSED 127.0.0.1:8080

At this time, golang still looks very healthy, but he can't work any more

[09:51:43][EPDS] : [GIN-debug] DELETE /v1/field/testing/:id     --> epds/apis/v1/controllers.TestingFieldDelete (5 handlers)
[09:51:43][EPDS] : [GIN-debug] Listening and serving HTTP on 0.0.0.0:8080

Then I found out where the problem was.

I debug the code.

               // file, store in memory or on disk
        fh := &FileHeader{
            Filename: filename,
            Header:   p.Header,
        }
        n, err := io.CopyN(&b, p, maxMemory+1)
        fmt.Println(err, "eeeeeeeeeeeeeeeeeeeeeeeeeeeeee")
        if err != nil && err != io.EOF {
            return nil, err
        }
        fmt.Println("qqqqqqqqqqqqqqqqqqqqq")
        fmt.Println(b.Bytes(), "bbbbbbbbbbbbbbbbbbbbb")
        fmt.Println("The process has collapsed")

output

[09:57:19][EPDS] : [GIN-debug] Listening and serving HTTP on 0.0.0.0:8080
[09:57:32][EPDS] : EOF eeeeeeeeeeeeeeeeeeeeeeeeeeeeee
[09:57:32][EPDS] : qqqqqqqqqqqqqqqqqqqqq

The process has collapsed No output !!!!!!!!!!!!! io.EOF error. Can no longer call b.Bytes()

Now I post my file fileName: test.yaml

{{- $app_name := .Values.application.name -}}

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-config
data:
  components.php: |
    <?php

    $db = require(__DIR__ . '/db.php');

    $components = [

        'request' => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => '3zX3FVJW7jtWMyNc8mHOIiZPzjwh-XIu1',
        ],

        'cache' => [
            'class' => 'yii\caching\FileCache',
        ],

        'user' => [
            'identityClass'   => 'app\models\User',
            'enableAutoLogin' => true,
        ],

        'errorHandler' => [
            'errorAction' => 'touch/errors/error',
        ],

        /*
        'log' => [
            'traceLevel' => YII_DEBUG ? 3 : 0,
            'targets' => [
                [
                    'class'  => 'yii\log\FileTarget',
                    'levels' => ['error', 'warning'],
                ],
            ],
        ],
        */

        'log' =>[
            'traceLevel' => YII_DEBUG ? 3 : 0,
            'targets' => [
                'db' =>[
                    'class'   => 'yii\log\DbTarget',
                    'enabled' => true,
                    'prefix'  => function () {
                        return Yii::$app->user->id;
                    },
                    'categories' => ['admin', 'author'],
                    'levels'     => ['info'],
                    {{ $logTable := "{{%ts_log}}" }}
                    'logTable' => '{{$logTable}}',
                    'logVars'    => [],
                ],
            ],
        ],

        'mailer' => [
            // send all mails to a file by default. You have to set
            // 'useFileTransport' to false and configure a transport
            // for the mailer to send real emails.
            //'useFileTransport' => true,
            'class'            => 'yii\swiftmailer\Mailer',
            'viewPath'         => 'mail',
            'useFileTransport' => false,
            'transport' => [
                'class'      => 'fdsfsf',
                'host'       => 'gsdgsg',
                'port'       => 'gds',
                'encryption' => 'gsdgsd',
                'username'   => 'gdsgsd@gdsgsg.cn',
                'password'   => "dgsgsgsdgs",
            ],
        ],

        'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName'  => false,
            'rules'           => [],
        ],

        'redis' => [
            'class'    => 'yii\redis\Connection',
            'hostname' => '{{.Values.redis.session.host}}',
            'port' => {{.Values.redis.session.port}},
            'database' => {{.Values.redis.session.database}},
            'password' => '{{.Values.redis.session.password}}'
        ],
        'redis2' => [
            'class'    => 'yii\redis\Connection',
            'hostname' => '{{.Values.redis.session.host}}',
            'port' => {{.Values.redis.session.port}},
            'database' => {{.Values.redis.session.database}},
            'password' => '{{.Values.redis.session.password}}'
        ],

        'script_authorize_redis_lock' => [
            'class'    => 'yii\redis\Connection',
            'hostname' => '{{.Values.redis.dan.host}}',
            'port' => {{.Values.redis.dan.port}},
            'database' => {{.Values.redis.dan.database}},
            'password' => '{{.Values.redis.dan.password}}',
        ],

        'session' => [
            'class'      => 'yii\redis\Session',
            'useCookies' => true,
            'timeout' => defined('SESSIONID_LIFE_TIME') ? constant('SESSIONID_LIFE_TIME') : 86400,       // session 过期时间
            'redis' => [
              'hostname' => '{{.Values.redis.session.host}}',
              'port' => {{.Values.redis.session.port}},
              'database' => {{.Values.redis.session.database}},
              'password' => '{{.Values.redis.session.password}}'
            ],
        ],

        'aliyunoss' => [
            'class'  => 'app\components\Aliyunoss',
            'config' => $params['oss'],
        ],

        'elasticsearch' => [
            'class'  => 'app\components\Elasticsearch',
            'config' => $params['elasticsearch']
        ],

        'version_upload_log' => [
            'class' => 'app\components\Logger',
            'logFile' => '@runtime/script_upload/'.date('Y-m-d').'.log',
        ],
    ];
    return array_merge($components, $db);

  console.php: |
    <?php

    $params = require(__DIR__ . '/params.php');
    $db = require(__DIR__ . '/db.php');
    $components = require(__DIR__ . '/components.php');
    unset($components['request']);
    unset($components['errorHandler']);
    unset($components['mailer']);
    unset($components['user']);

    $config = [
        'id' => 'basic-console',
        'basePath' => dirname(__DIR__),
        'bootstrap' => ['log'],
        'controllerNamespace' => 'app\commands',

        /*
        'components' => [
            'cache' => [
                'class' => 'yii\caching\FileCache',
            ],
            'log' => [
                'targets' => [
                    [
                        'class' => 'yii\log\FileTarget',
                        'levels' => ['error', 'warning'],
                    ],
                ],
            ],
            'db' => $db,
        ],
        'params' => $params,
        */

        'components'   => $components,
        'params'       => $params,

        /*
        'controllerMap' => [
            'fixture' => [ // Fixture generation command line.
                'class' => 'yii\faker\FixtureController',
            ],
        ],
        */
    ];

    if (YII_ENV_DEV) {
        // configuration adjustments for 'dev' environment
        $config['bootstrap'][] = 'gii';
        $config['modules']['gii'] = [
            'class' => 'yii\gii\Module',
        ];
    }
    return $config;

  db.php: |
    <?php

    return [
        // 触动DB
        'db' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.main_rw_splitting.host}};dbname={{.Values.mysql.main_rw_splitting.dbname}}',
            'username' => '{{.Values.mysql.main_rw_splitting.user}}',
            'password' => '{{.Values.mysql.main_rw_splitting.password}}',
            'charset'  => 'utf8mb4',
            'attributes' => [
                PDO::MYSQL_ATTR_FOUND_ROWS => true,
            ],
        ],

        'db_pay' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.ts_pay.host}};dbname={{.Values.mysql.ts_pay.dbname}}',
            'username' => '{{.Values.mysql.ts_pay.user}}',
            'password' => '{{.Values.mysql.ts_pay.password}}',
            'charset'  => 'utf8'
        ],

        'db_elf' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.elf.host}};dbname={{.Values.mysql.elf.dbname}}',
            'username' => '{{.Values.mysql.elf.user}}',
            'password' => '{{.Values.mysql.elf.password}}',
            'charset'  => 'utf8'
        ],

        'db_ent' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.enterprise.host}};dbname={{.Values.mysql.enterprise.dbname}}',
            'username' => '{{.Values.mysql.enterprise.user}}',
            'password' => '{{.Values.mysql.enterprise.password}}',
            'charset'  => 'utf8'
        ],

        'db_pro' => [
            'class' => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.tspro.host}};dbname={{.Values.mysql.tspro.dbname}}',
            'username' => '{{.Values.mysql.tspro.user}}',
            'password' => '{{.Values.mysql.tspro.password}}',
            'charset' => 'utf8',
        ],

        'db_statis' => [
            'class' => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.ts_statis.host}};dbname={{.Values.mysql.ts_statis.dbname}}',
            'username' => '{{.Values.mysql.ts_statis.user}}',
            'password' => '{{.Values.mysql.ts_statis.password}}',
            'charset' => 'utf8',
        ],
    ];

  params.php: |
    <?php

    return [

        'loginUrl' => 'fsdfsdf',

        'oss' => [
            'OSS_ACCESS_ID'=>'{{.Values.ram.author_platform.access_id}}',
            'OSS_ACCESS_KEY'=>'{{.Values.ram.author_platform.access_key}}',
            'EndPoint'=>'http://fsdfsdf',
            'OSS_BUCKETNAME'=>'fsdfsd',
            'root'=>'fsdf',
            'auth_photo_root' => 'fdsfsf',
        ],

        'ts-source-bucket'=>'fsdfsdfs-fsd',

        'cdn' => [
            'tsp'=>"https://{{.fdsp}}",
            'update'=>"https://{{.fsd.fsd.fds.fsdf}}",
            'oss'=>"https://{{.fsd.fs.ds.oss}}",
        ],

        'RSA_private_key' => file_get_contents( __DIR__ . '/secret/RsaPrivateKey.pem' ),
        'RSA_public_key'  => file_get_contents( __DIR__ . '/secret/RsaPublicKey.pem' ),

        'TSP_private_key' => file_get_contents( __DIR__ . '/secret/TspPrivateKey.pem' ),

        'card_auth_device_max_year' => 3,

        'card_day_consume' => 1,

        'buy_point_unit_price' => 0.05,

        'card_forever_consume' => 1000,

        'elasticsearch' => [
            'host' => [
                'fsdfs.fdsfsdf.54.17:fds'
            ]
        ],

        'devices_list_es_search' => false,
        'system_upgrade' => false,

    ];

  web.php: |
    <?php

    $params = require(__DIR__ . '/params.php');
    $db = require(__DIR__ . '/db.php');
    $components = require(__DIR__ . '/components.php');

    $config = [
        'id'           => 'tsp',
        'basePath'     => dirname(__DIR__),
        'bootstrap'    => ['log'],
        'language'     => 'zh-CN',
        'components'   => $components,
        'params'       => $params,
    ];

    if (YII_ENV_DEV) {
        // configuration adjustments for 'dev' environment
        $config['bootstrap'][] = 'debug';
        $config['modules']['debug'] = [
            'class' => 'yii\debug\Module',
            // uncomment the following to add your IP if you are not connecting from localhost.
            'allowedIPs' => ['115.171.135.157'],
        ];

        $config['bootstrap'][] = 'gii';
        $config['modules']['gii'] = [
            'class' => 'yii\gii\Module',
            // uncomment the following to add your IP if you are not connecting from localhost.
        ];
    }

    return $config;

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-nginx
data:
  nginx.conf: |
    limit_req_zone $binary_remote_addr zone=addr:10m rate=1000r/s;
    server {
        client_max_body_size 50m;
        listen 80;

        proxy_ignore_client_abort on;
        client_header_timeout 300s;
        client_body_timeout   300s;

        #server_name localhost dev.touchsprite.com;
        server_name  {{ template "nginx.servername" . }};
        #limit_req   zone=req_one  burst=100;
        limit_req zone=addr burst=5000 nodelay;

        root /www/default/web;
        index index.php index.html index.htm;

        location /static/ {
            access_log off;
            expires 1d;
            root "/www/default/web/frontEnd/dist";
        }

        location /new_public/ {
           access_log off;
           expires 1d;
           root "/www/default/web/frontEnd";
        }

        location / {
            try_files $uri $uri/ /index.php?$args;
        }

        location = /s-c-data {
          # 允许跨域
          add_header Access-Control-Allow-Origin *;
          add_header Access-Control-Allow-Headers X-Requested-With;
          add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
          default_type text/html;
          return 200 $msec;
        }

        location /ajax/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /site/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /images/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /css/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /js/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /assets/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /script/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }
        location /public/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /key/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /category/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /blacklist/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /device/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /temporary/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /log/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /about/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /weixin/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /openapi/luacts1 {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /weixinqa/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location ~ \.php$ {
            include fastcgi.conf;
            fastcgi_connect_timeout 300s;
            fastcgi_send_timeout 300s;
            fastcgi_read_timeout 300s;
            fastcgi_pass  unix:/var/run/php-fpm.sock;
            #fastcgi_pass   localhost:9000;
            #fastcgi_pass unix:/var/run/php5-fpm.sock;
            try_files $uri =404;
        }
    }

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-web
data:
  index.php: |
    <?php

    define("SESSIONID_LIFE_TIME", 86400);
    ini_set('session.cookie_lifetime', SESSIONID_LIFE_TIME);

    $host = $_SERVER['HTTP_HOST'];
    $suffix = substr($host, strrpos($host, '.'));

    ini_set('session.cookie_domain', "touchsprite{$suffix}");

    // comment out the following two lines when deployed to production
    {{- if .Values.debug }}
    defined('YII_DEBUG') or define('YII_DEBUG', true);
    defined('YII_ENV') or define('YII_ENV', 'dev');
    {{- else }}
    defined('YII_DEBUG') or define('YII_DEBUG', false);
    defined('YII_ENV') or define('YII_ENV', 'dev');
    {{- end }}

    require(__DIR__ . '/../vendor/autoload.php');
    require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');

    $config = require(__DIR__ . '/../config/web.php');

    (new yii\web\Application($config))->run();

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-supervisor
data:

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-root
data:

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-secret
data:
  TspPrivateKey.pem: |
    -----BEGIN RSA PRIVATE KEY-----
    MIIEpQIBAAKCAQEAzwyG5Ag2AnoAab+87ZJS/h7Jh4ZyIgH3JTbQTW1nsxuP/dNp
    a0uHqNkFjgN6QETVin3WTP/nTQt0PqKlJn9Tb8O8R+0iP1pGtacENd8iiUoNc1ts
    8Pu29IyFrQTnT+CG2eb4EVVNSwYXKyQeQirLohNDE5ld+dnjQlMDcKZCdlveb6T7
    22qJ6pYSvxi7D5yVCdaAmHCXzNEWpYizon5dxDJlhXZsyTPJmkvYWaxkhK0oIU4S
    b/cJBLgBT9VmQGLuCNK3UzZmR7rzoHj70aVDc9nKSUu7RD9chYWJaz61dehfgG8e
    NF6kOSnW83J+4dPi6miEsGcN/5PTM+MX/ddmiQIDAQABAoIBADFM5U2k2t9qF3EW
    s7DJ97MEt63qiICqgSO+UoktNNUEChxBW8etm2bMDjOLhm+JNGOepQl+oZ/Jy2si
    pTpudPqW290wjMgTAeU9GJaPRBT2qg8+xMj41s6SKz5QfZeaeeGmyoiuDBKCJ8Ah
    AId20zgLaBxhl2vnwuJHC/mlzQuLVLvbC7g+S02e8WY4h4eBZ1iBQmL7D0pzyQ+j
    aiGlZvVJ+VBPXHpqHv+HM1wjqYmQAH2TfNJdSDOwuQCNpishBBV8yCPk6BrHZpAH
    xkTbrnGmBFOl6HqGfFaGKxaxl7v58jBckQVoVckqEm+pZmC9WGhu2rVZ/MZOSNQm
    bkkExVECgYEA8gEDF9asDanYQYcaNzI4fVzxWSR1xBTFiQGUGWhKC+u/RX2dT7gG
    rITy2jKtzZn74EKU5Ope65ISkw4Mo7Ha7RwFsDhv+QXel+CX2r6+8r7PfQ5CcGuj
    UldBXTHu2tmMRq3HORRIrpVbXa0qw0G9jt9Fcdw7pynvSdvnsPXBbX0CgYEA2wX9
    D2vh0BFC6SJwb30+DT5IX5ITXUybiBJ8C7+7eHfK5fwwgaZae6n5QUra/vhQ8yDz
    YFBshIVZYdV3vYH2RkbuoZy35Finyoq0jUmHdOQl2Ji4rRark9nvsYAWnCGXCZPc
    jH1TcToYVejjpTa9Jfcq9kfc0dbr3PxSs+Xlmv0CgYEAoye7hh7c8HlJqyQCsKPT
    IfG/ZXIHU6MNakj+KAL/qPnPgnIl1NEk7rrTX/g65RqjjZZV+99nDzrz+uDF9La7
    +o+h5iSmmSUz5QEuX/OpmM675Hvwnwpymdjp4IMBndp9kEkov3rFZa6cYpOU+P8h
    ZWlx0EnCjfjfstPnaI7HUaECgYEA1SNewEMb3H7vvi/leplGaVzS0S416fVC5YgX
    bteGeBUbPfPMwF5Cb1VZWlCeDMFZBUBrlq6s68lY0fwKKkDuiDU+w8berTgZEOEq
    EtQbHYVnzv/Pt6D4F0leGD2twwJtGMTrOfff0w6h1UhmXipD33VU7zT8ha8rPeZT9O8
    J5Txe4ECgYEA3yVm5TvZpi7GWtjklFGX+/4kISL8MkkvS7BhStk1y/F5Aj4F+/LI
    GbKzsC78vYhsqBhP+jNCWgKGSjEOBFsjMl7SnpU7zQ6wO+N5N4jDeOlDS7YbafCC
    mHVO5XDmVw93opRVsm8Fns6s0NhDQP4rzO1bODUFxZH1QNMZ4Hle7tw=
    -----END RSA PRIVATE KEY-----

  RsaPrivateKey.pem: |
    -----BEGIN RSA PRIVATE KEY-----
    MIICXAIBAAKBgQCh1l7EsjADCC2sSBFun7SbAftCnufCklS9OsFE6U4PY/M/dE8q
    LAP36SUkS28CesC7DBN7kka7F+LQHiO2KmxQi8YcayKZ5IPGvNhoh0gCdTnvXRE9
    FSmP42KiDbnJOGWQO86Y1LpQY74MJvYsnxBNYURc719A/ZRuV9uPJSZXHwIDAQAB
    AoGAL03NnYjH59r4HqdiEQe1bqmBm9N+wqyrADSwUUgwfOcmLqH8kcMT1d7b8GPs
    KrlepE2/VBtJeV5d+Z8VqSV1Sw7Rmkpn2nMeQ1rhavkipnB3tanEYwFgpI9TFg+F
    GRINrrREbvsYMVSe44G0BxB3LcgdLcfsssdi6QLWzXMEoddFdrAECQQDM4CQWVceK8XTS
    w6Bx6eQJAUZr7vK5YdnrZxGQ0Q85HMlD7uPeFCbwkPYGUKHiNj9vCyzJ3iPz3v5P
    1Ncg5n+fAkEAyjjdfw4Ub188kfnC+JYzHzdZODPrqiatCsAaXoEDq7Iul9NDAH75
    HW4WR6z2SMTozcfIaqz7QSQ4AK/CheL4gQJAENpTPZ8axfwsvvWmqhgyUOdQ8qn6
    P3OkKHAXCtGXrfwHNlZdWjRQK7PQ+R4C4wfRWgISUhy62mG6i7iXZbZwQwJBALZ6
    +A1GJFSX6S2E51axGzKpHH6mA5xISFByJ5lt7GUMZhUlU8nnyl6vT7WgM6JY5geD
    p6vzqssOpuafs/ZjaYECQEzevhkcJUzSBOTU8y46fx9vBcMbxFC8wAXn0rnIfUB5
    bl2s/46Qxw6KS0+ZD6XXSFfgxi7Rj9nP9Kq0YhZ65d0=
    -----END RSA PRIVATE KEY-----

  RsaPublicKey.pem: |
    -----BEGIN PUBLIC KEY-----
    MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCh1l7EsjADCC2sSBFun7SbAftC
    nufCklS9OsFE6U4PY/M/dE8qLAP36fffSUkS28CesC7DBN7kka7F+LQHiO2KmxQi8Yc
    ayKZ5IPGvNhoh0gCdTnvXRE9FSmP42KiDbnJOGWQO86Y1LpQY74MJvYsnxBNYURc
    719A/ZRuV9uPJSZXHwIDAQAB
    -----END PUBLIC KEY-----

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-fpm
data:
  zzz-docker.conf: |
    [global]
    daemonize = no

    [www]
    listen = /var/run/php-fpm.sock
    listen.mode = 0777

What did you expect to see?

I need information remind To help me

What did you see instead?

I didn't see any information

theckman commented 3 years ago

@cloudmer closing the loop from the Gophers Slack: the Go issue tracker isn't the right place to ask for this kind of help. Feel free to direct your question to the #newbies or #general channels.

I think this issue can be closed.

cloudmer commented 3 years ago

@cloudmer关闭了Gophers Slack的循环:Go问题跟踪器不是寻求此类帮助的正确位置。随时将您的问题定向#newbies#general渠道。

我认为这个问题可以解决。

thank you

cloudmer commented 3 years ago

I found that I used it in the project. https://github.com/oxequa/realize This is the problem that has arisen