Invalid command 'WSGIScriptAlias', perhaps misspelled or defined by a module not included in the server configurationAction 'configtest' failed

StackOverflow https://stackoverflow.com/questions/20627327

Pergunta

I got the below error while I was configuring CKAN DataPusher.

Invalid command 'WSGIScriptAlias', perhaps misspelled or defined by a module not included in the server configurationAction 'configtest' failed.

How can I fix this?

Foi útil?

Solução

Try to enable wsgi mod in Apache

sudo a2enmod wsgi

If you come across below error

ERROR: Module mod-wsgi does not exist!

You will have to install mod wsgi as below. What you have to do is run the following commands,

sudo apt-get install libapache2-mod-wsgi
sudo a2enmod wsgi
sudo service apache2 restart

Outras dicas

To enable wsgi_mod in httpd, install the module

sudo yum install mod_wsgi

and make sure to load the module in the httpd config file

sudo nano /etc/httpd/conf/httpd.conf

then add the following line in the config file, to the list of other loaded module:

LoadModule wsgi_module modules/mod_wsgi.so

I faced this problem because

  1. I installed mod_wsgi which was compatible with python3.5, but my project's virtual environment was using python3.7. So, mod_wsgi for 3.7 was required. I installed that as well (python3.7 -m pip install mod_wsgi). But a configuration was missing from apache2 which resulted in this issue.

  2. run : mod_wsgi-express module-config
    add the output in /etc/apache2/apache.conf ( LoadModule wsgi_module "/home/user/.local/lib/python3.7/site-packages/mod_wsgi/server/mod_wsgi-py37.cpython-37m-x86_64-linux-gnu.so" WSGIPythonHome "/usr" )

    then restart - sudo service apache2 restart

This solved the problem.

I had this error after messing up my Apache installation and restarting the setup after an apt purge apache2. This also seems to have removed the wsgi mod but Ubuntu 20 LTS kept thinking it's still around.

So I had to to purge and reinstall the wsgi mod from scratch:

apt purge -y libapache2-mod-wsgi-py3
apt install -y libapache2-mod-wsgi-py3
a2enmod wsgi

After that, Apache was able to find it again.

I think you might need to add this line in your apache2.conf

LoadModule wsgi_module "/usr/local/lib/python3.6/dist-packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so"

Below command will give you the above output

mod_wsgi-express module-config
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top