我正在構建一個ror站點,並且要求對它進行臨時訪問限制。所有這一切都需要beta版用戶使用的一般訪問限制。該網站使用乘客部署在apache服務器上(在Mac上)。我想知道有什麼解決方案?Apache rails beta站點訪問解決方案
2
A
回答
4
我回答a similar question到昨天在Rails中使用簡單的解決方案;我使用這個解決方案來保護我的開發網站在測試時不被蜘蛛攻擊。爲方便起見,我在下面轉貼了它。
Rails有這個一個內置的輔助,你可以把這個應用程序中的控制器:
protected
def authenticate
authenticate_or_request_with_http_basic do |username, password|
username == "admin" && password == "test"
end
end
然後用的before_filter你想保護的任何控制器(或只是堅持在應用程序控制器阻止整個站點):
before_filter :authenticate
此方法適用於Nginx以及Apache,這是額外的好處。但是,如果您啓用了完整頁面緩存,則不會工作 - 因爲訪問者從不碰到Rails堆棧;它不會踢。
編輯 只是注意到你指定/管理路線。我所有的管理員控制器都從AdminController繼承。你可以根據自己的意願像這樣:
/app/controllers/admin/admin_controller.rb
class Admin::AdminController < ApplicationController
before_filter :authenticate
protected
def authenticate
authenticate_or_request_with_http_basic do |username, password|
username == "admin" && password == "test"
end
end
end
然後讓所有的控制器擴展管理器,如:
class Admin::ThingsController < Admin::AdminController
我的路線設置是這樣的:
map.namespace :admin do |admin|
admin.resources :things
end
希望有所幫助。
0
這是我第一次使用它,使用良好的舊htaccess解決方案,我發現令人驚訝的關於軌道的信息很少。 生成用戶名/密碼文件,用戶測試「:
mysite> htpasswd -c .htpasswd beta
mysite> chmod 755 .htpasswd
創建的軌道公共目錄 '公共/的.htaccess' 的訪問配置文件,其中包含:
AuthName "Enter password"
AuthType Basic
AuthUserFile /Users/myuser/projects/mysite/.htpasswd
require user beta
更改文件權限:
mysite> chmod 755 public/.htaccess
編輯的Apache的conf文件(找出它與 '的apachectl -V | grep的SERVER_CONFIG_FILE')。在虛擬主機配置的部分,添加以下定義是用來在htaccess文件是什麼:
AllowOverride All
0
Prefinery給你一個開箱即用的解決方案對於這種類型的場景http://www.prefinery.com/
相關問題
- 1. 託管站點的NoSQL解決方案
- 2. 從Xamarin解決方案訪問版本
- 3. 從解決方案訪問集合
- 4. Rails標記解決方案
- 5. Rails解決方案結構
- 6. 用戶子站點 - CMS多站點或其他解決方案
- 7. 最佳解決方案解決文件無法訪問錯誤
- 8. 通過URL方案訪問TomTom導航解決方案
- 9. Android,點對點,開源解決方案?
- 10. 多用戶Rails博客式網站 - 哪個CMS /解決方案?
- 11. 移動網站分析解決方案
- 12. Rails 3身份驗證解決方案
- 13. Rails搜索插件和解決方案
- 14. 配置時間戳Rails(解決方案)
- 15. 需要Rails項目解決方案嗎?
- 16. Rails記錄版本解決方案
- 17. Rails 3認證解決方案更新?
- 18. Django + dbxml + Apache =問題。任何解決方案
- 19. 在多站點解決方案的某些站點中隱藏Sitecore頁面
- 20. Sitecore Analytics重定向多站點解決方案
- 21. MVC 4是否有內置的站點地圖解決方案?
- 22. 多站點Codeigniter項目的最佳解決方案?
- 23. Sharepoint解決方案未顯示在「站點」>功能
- 24. 尋找網站訪問者的地理位置的解決方案
- 25. VS 2010解決方案取決於另一個解決方案
- 26. 我如何解決設計全屏網站上的解決方案問題?
- 27. 我的緩存解決方案解決方案是否安全?
- 28. Rails中可點擊搜索列表的最佳解決方案
- 29. 共享點日曆解決方案
屬於服務器故障 – Earlz 2010-05-06 14:25:49