我有一个新的rails应用程序,它在本地工作,并在我的测试服务器上工作,但在生产服务器上不起作用。奇怪的是,它适用于某些路线,但不适用于其他路线。
我正在使用活动管理员,我在active_admin登录后面设置的所有表单都正常工作,但是我的所有公共视图和主页都显示500个错误。
测试和生产的配置几乎完全相同,即使我在vhost.conf中有日志记录设置,它也没有在应用程序日志或apache日志中记录任何内容。
我认为这是一个许可或宝石问题,但似乎无法追查导致它的任何事情。
编辑:另外我应该注意到,当我去的时候,我的所有资产都正常供应。我可以通过网址直接访问它们,但它们可以正常工作。
Rails控制台也适用于我的所有对象。今天我花了很多时间在这上面,看了很多类似的问题而没有运气。有关如何调试此功能的任何建议都非常有用。提前谢谢。
编辑:这是我的.conf条目:
<VirtualHost *:80>
DocumentRoot /var/www/app_admin/public/
<Directory /var/www/app_admin/public>
AllowOverride all
</Directory>
ServerName www.mydomainname.com
ServerAlias mydomainname.com
ErrorLog /var/log/httpd/app_admin/error.log
CustomLog /var/log/httpd/app_admin/access.log common
</VirtualHost>
答案 0 :(得分:0)
请尝试在“目录”节点中添加新行Options -MultiViews
。
<VirtualHost *:80>
#...
<Directory /var/www/app_admin/public>
AllowOverride all
Options -MultiViews # add this line
</Directory>
#...
</VirtualHost>
答案 1 :(得分:0)
我之前遇到过这种情况。
由于执行rails而不是RAILS_ENV =生产rails,Apache(我相信)导致奇怪的是,Apache从开发而不是生产中获取资源。不确定如何,但它设法从Dev获取PID。
我最终重新启动了服务器,避免运行任何类型的rails命令,之后它就可以工作了。
耸耸肩。