I set up the django setting.py like this:
import os
from django.core.exceptions import ImproperlyConfigured
def get_env_variable(var_name):
try:
whatever environments you are setting in the settings.py will be applied for that instance's environment variables only, they are not changing the system env variables which will be called apache.
You say "The environment variables were set in .bashrc." Presumably you mean your .bashrc. Which is pointless, because Apache is not running as you, it is running as the Apache user.
As explained in the blog post referenced in the very question you link to, you need to set the environment variables in the Apache configuration file itself via the SetEnv
directive.