Macos “阿帕奇”;载货模块乘客舱;“在以下情况下工作”;apachectl-k start“;从bin目录调用,但不使用bash脚本

Macos “阿帕奇”;载货模块乘客舱;“在以下情况下工作”;apachectl-k start“;从bin目录调用,但不使用bash脚本,macos,apache,bash,passenger,Macos,Apache,Bash,Passenger,我正在使用 mac OS 1.8.3 RVM 1.19.6 Ruby 1.9.3p327 Apache2.4 飞信客运3.0.19 在一次Apache的无错误安装之后,我启动了服务器,它工作了 我写了一个“start_apache.sh”脚本: #!/bin/bash sudo /usr/local/apache2/bin/apachectl -k start 。。。这起作用了 然后我安装了phusion passenger,没有错误 当我运行start_apache.sh脚本时,出现了

我正在使用

  • mac OS 1.8.3
  • RVM 1.19.6
  • Ruby 1.9.3p327
  • Apache2.4
  • 飞信客运3.0.19
在一次Apache的无错误安装之后,我启动了服务器,它工作了

我写了一个“start_apache.sh”脚本:

#!/bin/bash 
sudo /usr/local/apache2/bin/apachectl -k start
。。。这起作用了

然后我安装了phusion passenger,没有错误

当我运行start_apache.sh脚本时,出现了以下错误

httpd:usr/local/apache2/conf/httpd.conf的第504行出现语法错误: 无法加载 /Users/perry_mac/.rvm/gems/ruby-1.9.3-p327/gems/passenger-3.0.19/ext/apache2/mod_passenger.so 进入服务器: dlopen(/Users/perry_mac/.rvm/gems/ruby-1.9.3-p327/gems/passenger-3.0.19/ext/apache2/mod_passenger.so, 10) :未找到符号:\u unixd\u config\n引用自: /Users/perry_mac/.rvm/gems/ruby-1.9.3-p327/gems/passenger-3.0.19/ext/apache2/mod_passenger.so\n 在中应为:平面命名空间\n在中 /Users/perry_mac/.rvm/gems/ruby-1.9.3-p327/gems/passenger-3.0.19/ext/apache2/mod_passenger.so

在经历了大量的“无法加载模块”问答之后,我试着

cd /usr/local/apache2/bin
sudo apachectl -k start
。。。它成功了

使用脚本仍然不起作用

有人能解释一下原因吗


非常感谢

也许这是用户配置文件的问题。你能检查一下环境参数的值吗?

可能与工作目录有关。试试这个:

#!/bin/bash 
cd /usr/local/apache2/bin/ && sudo ./apachectl -k start
谢谢你rzymek

你的洞察力引导我尝试以下方法:

perrys-MacBook-Pro:bin perry_mac$ ls
ab      apxs        dbmmanage   envvars-std htcacheclean    htdigest    httpd       logresolve
apachectl   checkgid    envvars     fcgistarter htdbm       htpasswd    httxt2dbm   rotatelogs
perrys-MacBook-Pro:bin perry_mac$ pwd
/usr/local/apache2/bin
perrys-MacBook-Pro:bin perry_mac$ which apachectl
/usr/sbin/apachectl
perrys-MacBook-Pro:bin perry_mac$ 
事情是这样的:我下载、构建并安装了Apache2.4。不知道mac OSX 10.8.3仍然有一个可运行的apache安装。我读过一些关于苹果如何从这个操作系统版本中“删除网络共享”的网络帖子。结果表明,这意味着他们删除了GUI元素,但保留了服务器。如您所见,我现在有两个版本的apachectl和httpd。我现在正在收拾剩下的烂摊子。作为后续行动,如果有人对如何最好地继续进行有建议,请在下面进行评论。否则,我将从修改$PATH开始,看看它是如何运行的

增编: 看起来这导致了我的困惑: ... 但这种联系没有带来任何补救措施(截至2013年5月5日)。必须在phusion passenger安装期间设置一个选项,以确保它指向所需的apache安装,但我找不到它


最后,我删除了我构建的apache 2.4版,并恢复到操作系统附带的2.2版。到目前为止,一切正常。

一切:)并找出不同之处。调用sudo apachectl-k start的两种方法应该使用相同的配置文件,不是吗?