Я опубликовал автономный веб-сервис с java в http://my-IP/
и он работает.
import javax.xml.ws.Endpoint;
public class Publisher
{
public static void main(String[] args) throws Exception
{
Endpoint.publish("http://172.16.58.13/", new TicketQueryImpl());
System.out.println("UP");
}
}
теперь я хочу сделать это в SSL и опубликовать его на https://my-IP/
.
Я много искал, но я не нашел хорошего образца или помощи. большинство из них не были автономными и использовали Tomcat
или другие серверы. любой орган мог бы мне помочь!
SSL - действительно сложный зверь (с точки зрения программирования). Почему бы не использовать что-то вроде nginx или Apache вашего веб-сервиса для проксирования запросов? т.е. он получает запросы на соединение SSL и пересылает ваш веб-сервис, прослушивающий порт 80.
server {
listen 443 ssl; # Listen to SSL connections
ssl_certificate www.example.com.crt;
ssl_certificate_key www.example.com.key;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
server_name my-IP.com www.my-IP.com;
access_log /var/log/nginx/example.com.access.log main;
access_log /var/log/nginx/example.com.cache.log cache;
error_log /var/log/nginx/example.com.error.log error;
location / {
proxy_pass http://localhost:80; # Forward requests to your webservice
}
Include /etc/nginx/proxy.conf; # Proxy configuration
}
См. Также http://nginx.org/en/docs/http/configuring_https_servers.html для получения дополнительной информации о правильной настройке сервера SSL.
ln -s /etc/nginx/sites-available/your-site-name /etc/nginx/sites-enabled/your-site-name
и затем перезапустите nginx. Или, возможно, просто измените сайт по умолчанию и перезапустите nginx.