我的控制器中有一个由 Rails 应用程序中的链接触发的方法。一切都在开发模式下完美运行,但无论出于何种原因,它都无法在生产模式下运行。每当我调用其中一个命令时,它都会像试图做某事一样转动它的齿轮,但实际上从不做任何事情。然而,奇怪的是太阳黑子的 REINDEX 确实有效。我正在查看我的生产日志并监控每个服务创建的 PID 文件。此外,如果我在我的 SSH 终端会话中正常运行这些命令,它们工作正常。
def toggle_service
command = params[:string].to_s
if command == 'stop_mailman_server'
system("ruby #{::Rails.root}/script/mailman_daemon.rb stop")
elsif command == 'start_mailman_server'
system("ruby #{::Rails.root}/script/mailman_daemon.rb start")
elsif command == 'start_search_server'
system("rake sunspot:solr:start RAILS_ENV=#{Rails.env}")
elsif command == 'stop_search_server'
system("rake sunspot:solr:stop RAILS_ENV=#{Rails.env}")
elsif command == 'reindex_search_server'
system("rake sunspot:reindex RAILS_ENV=#{Rails.env}")
end
redirect_to :back
end