Возможно ли установить без HTTPS, а затем настроить свой собственный SSL на уровне хостинга?
Да, но это требует отказа от использования скрипта ./discourse-setup и ручного редактирования файла app.yml. Такая конфигурация не рекомендуется, если вы не знакомы с процессом настройки и не готовы вносить в него изменения.
Могу ли я отредактировать файл и использовать команду / launcher rebuild?
Не могли бы вы объяснить, почему бесплатный встроенный SSL для вас не подходит?
У меня проблема с настройкой CDN (например, форум загружается без стилей, как при отключённом JavaScript), и я предпочитаю интегрировать собственный SSL для этих целей. Уже долгое время я размышляю, как установить форум без HTTPS в первую очередь?
И вы вините в этом встроенное SSL-инкапсулирование?
Это не имеет никакого отношения к сертификату.
Мне, что, решать задачи в темноте? Простите, но я только учусь, а учиться без ошибок сложно. Я задаю вопросы, на которые можно ответить только вопросом.
Нет, вы должны описать проблему, чтобы получить помощь. Это гораздо эффективнее, чем задавать неясные вопросы о предполагаемых решениях.
Если вы предоставите больше информации, мы сможем довольно быстро разобраться в сути дела.
Пытаюсь настроить CDN через CloudFront.
К сожалению, страница отображается корректно только при установке политики протокола происхождения (Origin Protocol Policy) в режим «Только HTTP». При переходе на sitenumbers.cloudfront.net страница отображается полностью (хотя и перенаправляет на основной домен). // В любом случае, в этом случае сайт загружается даже дольше, чем без CDN, так что это вообще не имеет смысла.
Когда я устанавливаю в CloudFront политику протокола происхождения «Соответствие зрителю» (Match Viewer), страница отображается без стилей, как будто JavaScript отключён. // но сайт загружается очень быстро.
Я не знаю, что именно вызывает эту проблему. Поэтому я хочу попробовать запустить форум без SSL.
./discourse-setup будет обслуживать HTTP-страницы, если вы не укажете адрес электронной почты для Let’s Encrypt. Вручную редактировать ничего не нужно.
Это верно.
Если вам нужен CDN, обратитесь к статье Enable a CDN for your Discourse. Отключение HTTP возможно, как описано выше, но это, скорее всего, не решит вашу проблему.
Спасибо. Я попытался отредактировать файл app.yml и выполнить команду rebuild, но страница не запустилась. Правильно ли я понимаю, что в этом случае нужно установить приложение заново?
В чём разница между discourse-setup и rebuild? Я понимаю, что на сайте ничего не изменится?
Это потому, что вы что-то сделали неправильно. Скорее всего, дело в пробелах.
Если вам нужен CDN, лучше всего сделать следующее:
cd /var/discourse
docker stop app
docker rm app
rm containers/app.yml
./discourse-setup
а затем следуйте инструкциям по ссылке, которую я предоставил ранее.
Удачи.
Благодаря этому руководству я его использую, но у меня возникла проблема с CloudFront — вы сами пишете:
CloudFlare CDN и Discourse исторически плохо сочетались, поэтому мы не рекомендуем использовать CloudFlare CDN на данный момент.
Однако я вижу, что у вас сайт правильно настроен для работы с CloudFront. Значит, это работает, верно?
Используйте любой CDN, какой пожелаете. Даже Cloudflare отлично подойдет, если настроить его как CDN, а не бездумно размещать перед всем сайтом.
Тогда как мне установить (принудительно заставить работать установки) без HTTPS и только с HTTP?
Вам нужно закомментировать две строки в верхней части, которые включают Let’s Encrypt и SSL.
Вот эти две:
#- "templates/web.ssl.template.yml"
#- "templates/web.letsencrypt.ssl.template.yml"
Но, опять же, я не думаю, что это решит проблему.
Что ж, это не так просто. Можете рассказать, как вы настроили CDN для своих форумов с помощью CloudFront?