我正在使用 Apache 和 Passenger 进行 Rails 项目。在重新启动期间,我收到以下错误
Cannot load /usr/lib/ruby/gems/1.8/gems/passenger-2.2.11/ext/apache2/mod_passenger.so into
server: /usr/lib/ruby/gems/1.8/gems/passenger-2.2.11/ext/apache2/mod_passenger.so: cannot
open shared object file: No such file or directory
但是 apache 配置文件没有任何变化。我已将 conf 文件中的片段附加到附件中
287 LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.11/ext/apache2/mod_passenger.so
288 PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.11
289 PassengerRuby /usr/bin/ruby1.8
我也无法在服务器指向的位置找到共享对象文件,尽管我不太确定 .so 文件是如何工作的(创建/销毁)
如果有人能向我解释到底发生了什么,我将不胜感激。我知道共享对象文件正在执行任务,那么它被删除的原因可能是什么呢?
答案1
如果您尚未安装它。
$ sudo 乘客-安装-apache2-模块
您需要运行它,以便在安装 gem 后可以编译 apache mod_passenger.so(gem install airliner)
看看安装程序显示的输出。它会告诉你文件在哪里。事实上,它会告诉你配置应该是什么样子。
答案2
尝试
locate mod_passenger.so
或者如果这不起作用问题
find / -type f -name mod_passenger.so
如果没有返回任何内容,则意味着您尚未安装它。