В моем ящике linode я установил SSL-сертификаты Let's Encrypt и создал приложение Vibe.d с голыми костями для тестирования моего SSL-соединения. Я всегда тайм-аут. Вот код:HTTPS on Vibe.d
import vibe.vibe;
void main()
{
auto settings = new HTTPServerSettings;
settings.port = 8080;
settings.bindAddresses = ["::1", "127.0.0.1","50.116.15.145"];
settings.tlsContext = createTLSContext(TLSContextKind.server);
settings.tlsContext.useCertificateChainFile("/etc/letsencrypt/live/findyourtutor.info/cert.pem");
settings.tlsContext.usePrivateKeyFile("/etc/letsencrypt/live/findyourtutor.info/privkey.pem");
listenHTTP(settings, &hello);
logInfo("Please open 'http://www.findyourtutor.info' in your browser.");
runApplication();
}
void hello(HTTPServerRequest req, HTTPServerResponse res)
{
res.writeBody("Hello, World!");
}
Если я просто посетить
www.findyourtutor.info or
findyourtutor.info
я могу просматривать их в порядке.
Но если я нахожусь https://findyourtutor.info
, я тайм-аут.
Я также тайм-аут с
https://findyourtutor.info:8080
https://www.findyourtutor.info
https://www.findyourtutor.info:8080
Когда вошли в Linode, я могу сделать
lynx https://localhost:8080
и рысь предупреждает меня о сертификатах, но я могу видеть сайт после нажатия «Y» дважды.
Я также могу сделать
lynx http://localhost
но не
lynx http://localhost:8080
На данный момент я не знаю, если мой код виноват или моя установка виновата.
Мой брандмауэр UFW позволяет HTTPS откуда угодно.
Спасибо за ваш ответ, @ Kozzi11. Да, это кажется странным, но как-то это работает. Я попробую ваши предложения. –
Привет @ Kozzi11, я узнал, что у меня есть несколько экземпляров моей программы после выпуска ps aux, и один из них прослушивал порт 80! Поэтому я перезагрузил свой linode, и теперь все становится понятнее. –