博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
将mcomaster配置以apache运行
阅读量:6332 次
发布时间:2019-06-22

本文共 2099 字,大约阅读时间需要 6 分钟。

  前一篇文章介绍了mcomaster的部署,完成后默认是以webrick http方式运行,监听3000端口,这个跟之前说的puppet-dashboard部署时一样,应该说rails程序默认都以这种方式运行。

  webrick本身效率并不好,另外我们很多时候不希望服务器开多余的端口,本文就介绍如何以apache的方式运行rails程序。

一、安装passenger

  需要为apache安装passenger模块,可以采用yum安装,这里使用gem安装

# gem install passenger完成后找到 passenger-install-apache2-module 运行# passenger-install-apache2-module

 

二、配置虚拟主机

  这里将配置一个虚拟主机,用来运行mcomaster

# vim /etc/httpd/conf.d/passenger.confLoadModule passenger_module /usr/ruby/lib/ruby/gems/2.1.0/gems/passenger-4.0.46/buildout/apache2/mod_passenger.so     #需要跟你的环境调整
PassengerRoot /usr/ruby/lib/ruby/gems/2.1.0/gems/passenger-4.0.46                             #同上  PassengerDefaultRuby /usr/ruby/bin/ruby
ServerName mcomaster.wofei DocumentRoot "/usr/mcomaster-master/public/"                              #mcomaster的路径,注意写对
Options None AllowOverride AuthConfig Order allow,deny allow from all

  另外还需要配置/etc/httpd/conf/httpd.conf中的NameVirtualName

NameVirtualHost 192.168.11.170:80

  然后重启apache,应该可以访问了。启动的时候我遇到过两个问题,如果你也遇到可以参考解决方法

1、apache对mod文件的执行权限,报如下错误

Starting httpd: httpd: Syntax error on line 221 of /etc/httpd/conf/httpd.conf: Syntax error on line 1 of /etc/httpd/conf.d/passenger.conf: Cannot load /usr/ruby/lib/ruby/gems/2.1.0/gems/passenger-4.0.46/buildout/apache2/mod_passenger.so into server: /usr/ruby/lib/ruby/gems/2.1.0/gems/passenger-4.0.46/buildout/apache2/mod_passenger.so: failed to map segment from shared object: Permission denied

  解决方法:http://stackoverflow.com/questions/20919771/centos-6-4-failed-to-map-segment-from-shared-object-permission-denied

2、SELinux导致无法绑定其他端口,起初我用80端口,mcomaster的虚拟主机配置不起作用,换成8081才发现这个错误,然后设置了后又改回80端口发现mcomaster也可以正常访问

Starting httpd: (13)Permission denied: make_sock: could not bind to address [::]:8081(13)Permission denied: make_sock: could not bind to address 0.0.0.0:8081no listening sockets available, shutting down

  解决方法:http://blog.itechol.com/space-33-do-blog-id-5114.html

最后添加本机映射,访问试试吧

 

转载于:https://www.cnblogs.com/waiwofei/p/3853534.html

你可能感兴趣的文章
Java设计模式之五大创建型模式(附实例和详解)
查看>>
60 Permutation Sequence
查看>>
主流的RPC框架有哪些
查看>>
Hive学习之路 (七)Hive的DDL操作
查看>>
[转]mysql使用关键字作为列名的处理方式
查看>>
awesome go library 库,推荐使用的golang库
查看>>
树形展示形式的论坛
查看>>
jdbcTemplate 调用存储过程。 入参 array 返回 cursor
查看>>
C++中的stack类、QT中的QStack类
查看>>
Linux常用基本命令[cp]
查看>>
CSS 相对|绝对(relative/absolute)定位系列(一)
查看>>
关于 Nginx 配置 WebSocket 400 问题
查看>>
Glide和Govendor安装和使用
查看>>
Java全角、半角字符的关系以及转换
查看>>
Dubbo和Zookeeper
查看>>
前端项目课程3 jquery1.8.3到1.11.1有了哪些新改变
查看>>
UOJ#179. 线性规划(线性规划)
查看>>
整合spring cloud云架构 - SSO单点登录之OAuth2.0登录认证(1)
查看>>
windows的服务中的登录身份本地系统账户、本地服务账户和网络服务账户修改
查看>>
JAVA中循环删除list中元素的方法总结
查看>>