我几个小时都在苦苦挣扎。这是我第一次尝试建立服务器。
我安装了rails,passenger和apache。 在httpd.conf中这是我写的:
ServerRoot "/etc/httpd"
# Here I wrote the IP address, since I still did not manage the DNS
Listen ##.##.##.94:80
ServerAdmin root@localhost
ServerName ##.##.##.94:80 # Do I need this?
<Directory />
AllowOverride none
Require all denied
Options Indexes FollowSymLinks Includes ExecCGI
</Directory>
<Directory "/var/www">
AllowOverride None
# Allow open access:
Require all granted
</Directory>
LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p551/gems/passenger-4.0.59/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p551/gems/passenger-4.0.59
PassengerDefaultRuby /usr/local/rvm/gems/ruby-1.9.3-p551/wrappers/ruby
</IfModule>
<VirtualHost *:80>
ServerName ##.##.##.##
# !!! Be sure to point DocumentRoot to 'public'!
DocumentRoot /var/www/blah_blah/public_html/public
<Directory /var/www/blah_blah/public_html>
# This relaxes Apache security settings.
AllowOverride all
# MultiViews must be turned off.
Options -MultiViews
# Uncomment this if you're on Apache >= 2.4:
Require all granted
</Directory>
</VirtualHost>
最后一节是由乘客制作的(我没有!从说明中复制它:-))。
当我转到IP地址时,我收到一个错误,指出找不到该页面。
我有使用“rails s”运行的rails。在此之前,我重新加载服务器并重新启动它以使配置文件生效。 另外,我授予了www文件夹的apache用户权限。
有什么问题?
我甚至尝试将index.html文件放在rails的公共文件夹中并尝试去那里,但是失败了。
顺便说一句 - 当我从控制台进行操作时:
wget http://0.0.0.0:3000
我得到200响应,这意味着它没问题。
错误在哪里?
答案 0 :(得分:-1)
我认为你应该改变端口:
<VirtualHost *:3000>
因为当你运行rails s
时,它会在端口3000上运行。