小编Ale*_*dko的帖子

使用 openssl 为生成的自签名证书指定天数(到期日期)

我还没有找到在哪里可以问这个问题,但看起来它是正确的地方

使用以下命令,我可以为证书颁发机构 (CA) 生成自签名证书:

$ openssl req -new -x509 -days 3650 -config ./openssl/ca.cnf -key ./dist/ca_key.pem -out ./dist/ca_cert.pem
Run Code Online (Sandbox Code Playgroud)

您可以看到-days设置结束日期的选项。如果我检查生成的证书,我会看到该days选项有效:

$ openssl x509 -enddate -noout -in ./dist/ca_cert.pem
notAfter=Aug 23 11:29:57 2028 GMT
Run Code Online (Sandbox Code Playgroud)

在所有地方/教程中,人们也使用days选项。

但是,如何在.cnf配置中指定相同的选项?我调查了很多文章,但似乎没有用(ca.cnf):

[ ca ]
default_ca      = my_ca
default_days    = 3650 # does not work
days            = 3650 # does not work

[ my_ca ]
...
default_days    = 3650 # does not …
Run Code Online (Sandbox Code Playgroud)

ssl openssl ssl-certificate

7
推荐指数
1
解决办法
1万
查看次数

如果提供的列值不为空,则可选列更新

我有下表:

CREATE TABLE IF NOT EXISTS categories
(
    id SERIAL PRIMARY KEY,
    title CHARACTER VARYING(100) NOT NULL,
    description CHARACTER VARYING(200) NULL,
    category_type CHARACTER VARYING(100) NOT NULL
);
Run Code Online (Sandbox Code Playgroud)

我正在使用pg-promise,并且我想提供可选的列更新:

categories.update = function (categoryTitle, toUpdateCategory) {
  return this.db.oneOrNone(sql.update, [
          categoryTitle,
          toUpdateCategory.title, toUpdateCategory.category_type, toUpdateCategory.description,
        ])
}
Run Code Online (Sandbox Code Playgroud)
  • categoryName- 是必须的
  • toUpdateCategory.title- 是必须的
  • toUpdateCategory.category_type- 是可选的(可以传递或未定义)
  • toUpdateCategory.description- 是可选的(可以传递或未定义)

我想构建UPDATE查询以仅更新提供的列:

UPDATE categories
SET title=$2,
// ... SET category_type=$3 if $3 is no NULL otherwise keep old category_type value
// ... …
Run Code Online (Sandbox Code Playgroud)

sql postgresql sql-update pg-promise

7
推荐指数
1
解决办法
4444
查看次数

不带路径的curl CONNECT方法(改为目标主机名和端口)

我想测试代理服务器。为了发出https请求,浏览器预先发送CONNECT方法(例如,像Firefox一样,当指定代理时)。我无法实现/发送相同的结果curl

以下有根斜线/www.example.com:443

curl -X CONNECT http://proxy_host:proxy_port/www.example.com:443
Run Code Online (Sandbox Code Playgroud)

以下内容将不起作用(没有斜线):

curl -X CONNECT http://proxy_host:proxy_portwww.example.com:443
Run Code Online (Sandbox Code Playgroud)

以下不是我想要的:

curl -X CONNECT http://proxy_host:proxy_port/some_path
Run Code Online (Sandbox Code Playgroud)

因此,HTTP 数据的第一行应该是 CONNECT www.example.com:443 HTTP/1.1但不像CONNECT /www.example.com:443 HTTP/1.1本例中的curl 发送的那样。

如果我知道如何不发送路径,也许这个问题也以某种方式相关。

笔记!我不想使用curl -x http://proxy_host:proxy_port https://www.example.com,因为此选项/标志-x不适用于自定义 SSL 证书--cacert ... --key ... --cert ...

有什么想法如何发送纯头数据或不指定路径,或指定主机和端口作为路径?

curl http

2
推荐指数
1
解决办法
7449
查看次数

标签 统计

curl ×1

http ×1

openssl ×1

pg-promise ×1

postgresql ×1

sql ×1

sql-update ×1

ssl ×1

ssl-certificate ×1