Apache w/ SSL + Discourse: Next steps?

Dear @OrbitStorm

First of all, we use Discourse in production behind an Apache2 reverse proxy (in more than one instance) and we had zero problems setting it up; other than the normal “Google when you need help” which everyone does without hesitation.

Second, I have never asked the Discourse team or anyone on meta to support Apache2 as our reverse proxies because this configuration is not officially supported. Discourse does not (to my knowledge) “officially” support multi-container configurations, reverse proxies (Apache2), Kubernetes, Docker Swarm, and a nearly infinite number of other configurations. It is understandable and correct that the Discourse team, who gives this great software away for free and open sources all the code, every commit on Github, to limit their “officially supported configurations.” I thought Jeff summarized this nicely and very correctly:

Well, as we clearly state multiple times, there’s a limit to what we can support for free here due to time and sanity constraints. - Jeff A.

Third, Discourse does provide a number of tutorials for “unsupported” configurations, like for Apache2 as a reverse proxy; however, setting up a reverse proxy is not a “Discourse task” per se. Setting up a reverse proxy is a “generic sys admin task” which is basically the same task for any back-end app, including Discourse.

We run Apache as a reverse proxy in front of a number of web applications including Discourse, Docker Registry, and other Docker containers and apps. The use of Apache2 (or nginx) as a reverse proxy is not germane to Discourse. It is a generic sys admin task.

Fourth. There is a wealth of information on the net about how to set up Apache2 as a reverse proxy for an application. It is totally unnecessary nor useful to your cause, to bully the Discourse team over this issue. Bullying people and using terms like “charade” is both inaccurate and not helpful to your cause (or to anyone here).

So, to summary for you @OrbitStorm (this is my last post on your topic, so please read carefully) what has been said before, including the kind and patient words of J. A., you have many choices.

  1. You can easily go to the net and learn how to set up Apache2 as a reverse proxy (this is what we did), and it’s fun and free for you to learn to do this generic sys admin task.

  2. You can hire someone to do this for you if you are unwilling to learn, or cannot “figure it out” on your own or do not have the time.

  3. You can post here and rant and rave, calling meta and this forum a “charade” and hurling insults at everyone to try to bully them to support you personally in an unsupported configuration.

I strongly recommend, as a Discourse user and many decades sys admin, you not choose #3 (the bullying and intimidation is not going to work with the meta team, this I can assure you); and to consider #1 if you don’t want to spend any money for help.

Setting up Apache2 as a reverse proxy for Discourse is really quite easy. There are some Discourse meta posts on this (some current, some dated) and there are countless tutorials on the net about how to set up Apache2 as a reverse proxy for a web app. The technique is the same. I recommend exposing a unix socket when running in reverse proxy mode.

Honestly, It is fun to set up Apache2 as a virtual host reverse proxy to Discourse. Why make it stressful and post insults at the guys who created this great software and give it away for free? Discourse is a free gift! If you want to configure Discourse other than the officially supported configurations, no one is going to stop you!

In closing @OrbitStorm, I strongly advise you (speaking as a Discourse user, not a team member), to change your approach of bullying on meta for support. Like I said, I run Discourse in “not officially supported” configurations and have posted updates and code here to help others (giving back to this great community). I have already posted working code which is easy to follow to setup Apache2 as a reverse proxy, as have others before me.

Kindly choose either #1 (do it yourself) or #2 (hire someone to do it); and please drop your current approach of #3 (intimidating, bullying and insulting the meta team). If you want to choose #3, go post over at our unix and linux forums and you can bully me over there if you want, all you want :slight_smile: