我有一個Rails應用程序,它工作得很好。對於某些特定頁面,我希望在用戶請求該頁面時將其重定向到其他頁面,但我想要的是執行重定向outside
Rails代碼,因此最後的設置必須在rails代碼本身之外。 可能有一個htaccess文件修改爲一個外部文件重定向到其他頁面,但我還沒有做到這一點與軌道。是否有可能在Rails應用程序之外設置重定向規則?
所以,問題是 - 這可能嗎?
我有一個Rails應用程序,它工作得很好。對於某些特定頁面,我希望在用戶請求該頁面時將其重定向到其他頁面,但我想要的是執行重定向outside
Rails代碼,因此最後的設置必須在rails代碼本身之外。 可能有一個htaccess文件修改爲一個外部文件重定向到其他頁面,但我還沒有做到這一點與軌道。是否有可能在Rails應用程序之外設置重定向規則?
所以,問題是 - 這可能嗎?
您需要在請求Rails應用程序之前處理請求。例如,您可以在您使用的HTTP服務器(nginx,apache等)配置中創建重寫規則。
請參見以下鏈接:
如果您沒有訪問您的服務器配置(例如你在Heroku上),你可以使用refraction
寶石( https://github.com/joshsusser/refraction)。它是一箇中間件,所以實際上你將這種重定向邏輯放入Rails中,但至少它不會觸及你的控制器。
謝謝zwippie,但是有沒有辦法在rails應用程序之外定義重定向規則,比如在網站上定義一個'htaccess'或類似的東西,正在使用rails – Aleks
什麼是「在Rails代碼之外進行重定向」? –
我不想在Rails代碼本身做任何改變來進行重定向。有沒有辦法在Rails代碼之外做到這一點?這就是我的意思 – Aleks