我檢查了其他類似的問題,但都沒有相同的問題。簡而言之,在用戶登錄後,我的應用程序將重定向到根路徑。應該很簡單,但由於某種原因,redirect_to沒有返回正確的url。它在開發模式下工作正常。 我想了解如何設置生產模式。所以,我有什麼,但登錄/註銷時,grah.ddns.net一個小的應用程序。當我做了redirect_to的到root_url我得到了我的瀏覽器的地址框中輸入以下內容:Rails redirect_to在生產中不能正常工作
「http://grah.ddns.net,grah .ddns.net「
我不知道爲什麼redirect_to會返回這樣的字符串。
這裏是我的控制器代碼:
def login
user = User.find_by_name(params[:name])
if user.present?
@user = user.authenticate(params[:password])
if @user.present?
session[:userID] = @user.id
session[:userName] = params[:name]
end
end
// responds with "http://grah.ddns.net, grah.ddns.net
redirect_to root_url
end
def logout
session.delete(:userID) if session[:userID].present?
session.delete(:userName) if session[:userName].present?
// Which should I use root_path or root_url?
redirect_to root_path
end
,這裏是我的路線文件:
Rails.application.routes.draw do
root 'main#index'
get 'main/index'
post 'session/login'
get 'session/logout'
end
我什麼也看不到在這裏,應該引起什麼我得到。我發現遠程連接到這個唯一的東西是:
config.consider_all_requests_local = false
這是在開發模式,它的工作原理。我在做什麼生產模式的一部分,我錯過了?一半試圖在開發模式下運行... sheesh。
請您分享您的路線文件嗎? –
添加路線文件到問題。 – detrix42