我安装了安装3.0.13的gem Passenger。 然后我执行了passenger-install-nginx-module,这是http://www.modrails.com上的Nginx指令所说的。 根据Nginx官方wiki页面安装最新的稳定版本1.2.1。 我说要安装Nginx到/ usr / local / nginx(这是默认的,如果你去nginx维基网站)。 我得到以下错误:
Undefined symbols for architecture x86_64: "_pcre_free_study", referenced from: _ngx_pcre_free_studies in ngx_regex.o ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status make[1]: *** [objs/nginx] Error 1 make: *** [build] Error 2 -------------------------------------------- It looks like something went wrong Please read our Users guide for troubleshooting tips: /Users/server1/.rvm/gems/[email protected]/gems/passenger-3.0.13/doc/Users guide Nginx.html If that doesn't help, please use our support facilities at: http://www.modrails.com/ We'll do our best to help you.
我已经search了几个小时,试图find一个解决scheme。 我尝试了Google Group for Phusion Passenger,但没有find任何东西。 我不知道版本号是否有不匹配。 文档没有提到这个错误。
我有同样的问题,看到这个问题,但张贴在StackOverflow。
看看我的答案。 https://stackoverflow.com/questions/11065037/passenger-nginx-module-failing/11067526#11067526
从SO:
我看到NGINX已经有了一张已经closures的票 ,但是这个解决scheme对我来说并不合适。
然而,我确实通过运行一个定制的安装来使NGINX运行起来并且再次与Passenger一起运行。 这显然是与版本2和以上的兼容性问题。
首先我拉下了NGINX源码(1.0.15)。
在我的/ usr / local中
wget http://www.nginx.org/download/nginx-1.0.15.tar.gz nginx_source
解压
tar -xvz nginx-1.0.15.tar.gz
然后运行乘客安装。 select选项2(自定义Instalation)
sudo passenger-install-nginx-module
在那里,它会提示源代码位于/usr/local/nginx-1.0.15以及你想要在哪里安装/usr/local/nginx (在我的情况下)。
一切正常,从那里,任何人都知道任何真正的固定NGINX 2,请让我知道。