我正在尝试将所有连接设置为通过 Socks 5。我有以下代码:
System.setProperty("socksProxyHost" , "xx.xx.xx.xx");
System.setProperty("socksProxyPort" , "yy") ;
System.setProperty("socksProxyVersion" , "5");
System.setProperty("java.net.socks.username" , "username");
System.setProperty("java.net.socks.password" , "password");
Run Code Online (Sandbox Code Playgroud)
但是,每当我尝试如下连接时,我认为这就足够了:
HttpResponse response = httpclient.execute(httppost);
Run Code Online (Sandbox Code Playgroud)
我得到一个例外:
Jun 14, 2015 11:44:01 AM org.apache.http.impl.client.DefaultHttpClient tryConnect
INFO: I/O exception (java.net.SocketException) caught when connecting to {}->http://www.destination.com: SOCKS : authentication failed
Jun 14, 2015 11:44:01 AM org.apache.http.impl.client.DefaultHttpClient tryConnect
INFO: Retrying connect to {}->http://www.www.destination.com
Jun 14, 2015 11:44:03 AM org.apache.http.impl.client.DefaultHttpClient tryConnect
INFO: I/O exception (java.net.SocketException) caught when connecting to {}->http://www.www.destination.com: SOCKS : authentication failed
Jun 14, 2015 …Run Code Online (Sandbox Code Playgroud) 我将 nginx 设置为使用子域为多个站点提供服务。我将第一个设置为使用 ssl,如下所示:
ssl on;
ssl_certificate /etc/nginx/certs/subdomain1.domain.crt;
ssl_certificate_key /etc/nginx/certs/subdomain1.domain.key;
Run Code Online (Sandbox Code Playgroud)
这在连接到https://subdomain1.domain.tld时效果很好。但是,为另一个子域定义类似的规范以使用 ssl 使 nginx 始终为用户提供 subdomain1.domain.crt 服务,而不是提供足够的证书...
服务器名称指示 (SNI) 在 nginx 中启用,我仔细检查了证书路径.. 可能是什么问题?
作为参考,我查看了 [1] 中描述的教程,它确实遵循我的设置。
完整的 nginx 配置文件如下:
server {
listen 80;
server_name subdomain1.domain.tld;
return 301 https://$server_name$request_uri;
}
server {
listen subdomain1.domain.tld:443;
server_name subdomain1.domain.tld;
ssl on;
ssl_certificate /etc/nginx/certs/subdomain1.domain.tld.crt;
ssl_certificate_key /etc/nginx/certs/subdomain1.domain.tld.key;
root /usr/share/nginx/www/subdomain1.domain.tld;
index index.php index.html index.htm;
location ~ \.php$ {
fastcgi_pass unix:/etc/php5/fpm/socks/ssl_subdomain1.domain.tld.sock;
include fastcgi_params;
fastcgi_param HTTPS on;
}
location ~ /\. {
deny all;
} …Run Code Online (Sandbox Code Playgroud) 我正在使用 Spring Boot 构建一个简单的 REST 服务,我想知道处理日志记录的最合适的方法。
在我的application.properties文件中,我有以下内容:
logging.level.org.springframework.web: DEBUG
Run Code Online (Sandbox Code Playgroud)
在开发应用程序时,我只是这样运行它:
java -jar myapp.war
Run Code Online (Sandbox Code Playgroud)
因此,我在标准输出中获得了所有不错的日志消息。但是,我打算部署它,我想知道部署应用程序并仍然保留日志的最合适方法是什么。
当然,可以简单地重定向输出
java -jar myapp.war >> somefile
Run Code Online (Sandbox Code Playgroud)
但这不是很优雅,我想部署我的应用程序,以便它可以轻松地用作服务:
ln -s /my/app/xyz.war /etc/init.d/xyz
Run Code Online (Sandbox Code Playgroud)
然后,做
service xyz start|stop|restrart
Run Code Online (Sandbox Code Playgroud)
来管理它。似乎这样做会阻止我重定向 stdout ..
对此有何想法或建议?