Как установить Discourse без SSL?

Возможно ли установить без 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. Значит, это работает, верно?

@pfaffman :cry: :sleepy:

Используйте любой CDN, какой пожелаете. Даже Cloudflare отлично подойдет, если настроить его как CDN, а не бездумно размещать перед всем сайтом.

Тогда как мне установить (принудительно заставить работать установки) без HTTPS и только с HTTP?

Вам нужно закомментировать две строки в верхней части, которые включают Let’s Encrypt и SSL.

Вот эти две:

  #- "templates/web.ssl.template.yml"
  #- "templates/web.letsencrypt.ssl.template.yml"

Но, опять же, я не думаю, что это решит проблему.

Что ж, это не так просто. Можете рассказать, как вы настроили CDN для своих форумов с помощью CloudFront?