我正在尝试使用客户端证书进行 curl 请求,如下所示:
curl -E my.pem https://some.site
Run Code Online (Sandbox Code Playgroud)
我收到以下错误消息:
curl: (35) error:14094418:SSL routines:SSL3_READ_BYTES:tlsv1 alert unknown ca
Run Code Online (Sandbox Code Playgroud)
如果我有一个正在创建的模板,我如何确保该目录存在?例如:
template "#{node[:app][:deploy_to]}/#{node[:app][:name]}/shared/config/database.yml" do
source 'database.yml.erb'
owner node[:user][:username]
group node[:user][:username]
mode 0644
variables({
:environment => node[:app][:environment],
:adapter => node[:database][:adapter],
:database => node[:database][:name],
:username => node[:database][:username],
:password => node[:database][:password],
:host => node[:database][:host]
})
end
Run Code Online (Sandbox Code Playgroud)
这失败了,因为/var/www/example/shared/config不存在database.yml要复制到。我在考虑 puppet 如何让您“确保”目录存在。
我在同一主机上运行了多个 ruby 应用程序:
~/app1
~/app2
~/app3
Run Code Online (Sandbox Code Playgroud)
我想让 nginx 使用子目录代理这些应用程序,例如:
http://example.com/app1
http://example.com/app2
http://example.com/app3
Run Code Online (Sandbox Code Playgroud)
我很好奇 nginx 是否支持我在多个文件中定义这些位置,以便我可以将每个配置保留在应用程序中,而不是为所有应用程序拥有一个单一的配置文件:
~/app1/nginx.conf
~/app2/nginx.conf
~/app3/nginx.conf
Run Code Online (Sandbox Code Playgroud)
我在 3 个配置文件中的每一个中都使用单个位置指令定义服务器的天真尝试导致conflicting server name "example.com" on [::]:80, ignored配置如下所示:
upstream app1 { server 127.0.0.1:4567; }
server {
listen [::]:80;
listen 80;
servername example.com
location /app1 {
proxy_pass http://app1;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Request-Start $msec;
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法以这种方式组织配置?
我希望能够从 php 脚本重新启动服务。在 www-user 帐户下运行。
执行这些操作的首选方式是什么?
我认为我可以使用 que'd 命令创建一个文件,由 CRON 读取,但解决方案很痒。
我在想的是一个在 root 下运行的小服务,允许预定义的“方法”,因此无法执行任意的 root 操作。
有什么工具可以做到这一点吗?
我不确定为什么在重新启动 apache 时会出现以下错误:
Invalid command 'VirtualDocumentRoot', perhaps misspelled or defined by a module not included in the server configuration
Action 'start' failed.
它所指的片段是这样的:
<VirtualHost *:80>
ServerAdmin help@mydomain.com
VirtualDocumentRoot /local/www/staging/%1
ServerAlias *.staging.mydomain.com
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
我认为这是一个拼写错误,但它是直接从我的另一台服务器复制的。它在那里工作得很好。有任何想法吗?
我有带有 RHEL 6 和 postfix (postfix-2.6.6-2.2.el6) 的服务器,当我尝试向 Google 发送电子邮件时,我在 /var/logmaillog 中收到了这个:
postfix/smtp[13414]: 6F4DC10406E7: to=<XXX@englishonlineuniversity.com>, relay=none, delay=0.16, delays=0.02/0/0.14/0, dsn=4.4.1, status=deferred (connect to aspmx.l.google.com[2a00:1450:4013:c01::1b]:25: Network is unreachable)
Run Code Online (Sandbox Code Playgroud)
此错误仅发生在此域 (englishonlineuniversity.com) 上。
connect to aspmx.l.google.com:25: Network is unreachable 是什么意思?
我遇到了 NAGIOS 系统向流行的电子邮件到短信服务发送电子邮件的问题。电子邮件到短信服务接收带有文本的电子邮件Subject:,并将它们发送到To:字段中编码的手机号码。到现在为止还挺好。可悲的是,sendmail的(和前后缀)似乎将无偿CRLF到(不一定长)Subject:线,而这造成我的短信,以在CRLF被截断,当且仅当该Subject:行包含一个或多个冒号过去没来由CRLF。
我相信这些消息是正确创建的,但可以肯定的是,这里是我为自己创建了一个完全 noddy 测试消息,Subject:一行很长:
echo "foo" | mail -s "1234567 101234567 201234567 301234567 401234567 501234567 601234567 701234567 801234567 90123456789" reaper@teaparty.net
Run Code Online (Sandbox Code Playgroud)
注意这一Subject:行没有多余的冒号;我在这里所做的只是显示在电线上插入了一个额外的 CRLF。这是结果sudo ngrep -x port 25:
44 61 74 65 3a 20 46 72 69 2c 20 33 31 20 4d 61 Date: Fri, 31 Ma
79 20 32 30 31 33 20 31 30 3a 34 33 3a 35 …
有很多配置文件,我放了一个文件,但我没有看到它的效果。
要么我的配置是错误的,要么 Apache 未加载配置文件。
有没有我可以触发的命令来查看特定的配置文件是否被 Apache 加载?
apachectl configtest
Run Code Online (Sandbox Code Playgroud)
不打印错误。服务器重新启动没有错误。
例如,在 bash 中,我可以输入!xyzwhich 将运行我输入的最后一个以xyz.
如何调出我输入的最后一个命令xyz但不执行它?
例如,我可以在执行前更改参数....
我正在尝试打印响应数据以用于开发/调试目的。我找不到类似的问题或有关此的任何信息。如果你这样做,请添加评论。