启动 uWSGI 模块化构建时出错:没有这样的文件或目录 - /etc/uwsgi/ext/uwsgi/uwsgi.ruby

Error starting uWSGI modular build: No such file or directory - /etc/uwsgi/ext/uwsgi/uwsgi.ruby

我已经安装了 uWSGI,我正在尝试以 emperor 模式启动它。我已经安装了所有必要的依赖项和 python 插件。错误是正确的,该位置没有该名称的文件。错误如下。

/usr/bin/uwsgi:4:in `exec': No such file or directory - /etc/uwsgi/ext/uwsgi/uwsgi.ruby (Errno::ENOENT)
    from /usr/bin/uwsgi:4

找到答案了。我不确定我做了什么导致了这个问题,但希望这能帮助将来的人。

我可以在可执行文件中看到它正在此处查找文件:

cmd = File.expand_path "/etc/uwsgi/ext/uwsgi/uwsgi.ruby" //(edited to show the real path)

但这显然不存在。这可能与我第一次配置 uWSGI 时没有安装 ruby 有关。所以我解决了以下问题:

  • 正在安装ruby

  • 运行ruby extconf.rbextconf.rb 是它正在搜索的目录中的唯一文件 (/etc/uwsgi/ext/uwsgi/)

所以,就是这样。不知道为什么会这样,但这就是解决它的原因。如果有人可以提供有关原因的任何信息,那就太好了。