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
#!/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的两种方法应该使用相同的配置文件,不是吗?