无效的命令“WSGIScriptAlias”,可能拼写错误或由未包含在服务器配置中的模块定义操作“configtest”失败

Posted

技术标签:

【中文标题】无效的命令“WSGIScriptAlias”,可能拼写错误或由未包含在服务器配置中的模块定义操作“configtest”失败【英文标题】:Invalid command 'WSGIScriptAlias', perhaps misspelled or defined by a module not included in the server configurationAction 'configtest' failed 【发布时间】:2014-01-04 19:29:36 【问题描述】:

我在配置 CKAN DataPusher 时遇到以下错误。

无效命令“WSGIScriptAlias”,可能拼写错误或由 模块未包含在服务器配置操作“configtest”中 失败了。

我该如何解决这个问题?

【问题讨论】:

【参考方案1】:

尝试在 Apache 中启用 wsgi mod

sudo a2enmod wsgi

如果遇到以下错误

错误:模块 mod-wsgi 不存在!

您必须安装 mod wsgi,如下所示。你要做的就是运行以下命令,

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

【讨论】:

起初它没有用,但使用apt-get update --fix-missing更新了软件包,然后我可以安装了。 谢谢。我必须安装 libapache2-mod-wsgi-py3 才能让它与 python3 一起工作【参考方案2】:

要在 httpd 中启用 wsgi_mod,请安装模块

sudo yum install mod_wsgi

并确保将模块加载到 httpd 配置文件中

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

然后在配置文件中将以下行添加到其他已加载模块的列表中:

LoadModule wsgi_module modules/mod_wsgi.so

【讨论】:

我使用的是windows操作系统,如何解决这个问题? 对不起朋友,我帮不了你。我希望其他人会发布您的问题的答案。祝你好运!【参考方案3】:

我遇到这个问题是因为

    我安装了与python3.5兼容的mod_wsgi,但是我的项目的虚拟环境使用的是python3.7。因此,需要 3.7 的 mod_wsgi。我也安装了它(python3.7 -m pip install mod_wsgi)。但是 apache2 中缺少配置导致此问题。

    运行:mod_wsgi-express 模块配置 在 /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" )

    然后重新启动 - sudo service apache2 restart

这解决了问题。

【讨论】:

【参考方案4】:

在弄乱我的 Apache 安装并在 apt purge apache2 之后重新启动设置后,我遇到了这个错误。这似乎也删除了 wsgi mod,但 Ubuntu 20 LTS 一直认为它仍然存在。

所以我不得不从头开始清除并重新安装 wsgi mod:

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

之后,Apache 能够再次找到它。

【讨论】:

【参考方案5】:

我认为您可能需要在 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"

下面的命令会给你上面的输出

mod_wsgi-express module-config

【讨论】:

以上是关于无效的命令“WSGIScriptAlias”,可能拼写错误或由未包含在服务器配置中的模块定义操作“configtest”失败的主要内容,如果未能解决你的问题,请参考以下文章

使用 Django/Django.js 和 WSGIScriptAlias 进行 URL 反向

Invalid command 'WSGIScriptAlias', perhaps misspelled or defined by a module not inc

Apache 2 + mod_wsgi + WSGIScriptAlias

WSGIScriptAlias 为 /PREFIX 时的 Django localeURL

无效的命令“订单”,可能拼写错误或由未包含在服务器配置中的模块定义失败

Puppet Docker PHP Apache 设置 - 无效命令“RewriteRule”,可能拼写错误或已定义