2010-01-22 22 views
12

Bazı yolları için ssl_requirement eklentisiyle birlikte HTTPS kullanan bir uygulamam var. Dağıtıldı ve üretimde iyi çalışıyor. 'Gelişimde SSL ile nasıl başa çıkıyorsunuz?

map.resource :session, :controller => 'session', 
         :only => [:new, :create, :destroy], 
         :requirements => { :protocol => 'https' } 

İdeal:

soru anda ben sadece :requirements anahtarını çıkarmak için benim routes.rb giriyorum çünkü iyi, gelişmesinde bu nasıl işleneceğini ve açıkçası o değil çok uygun ya da zarif Uygulamamın güvenli kısımlarını herhangi bir değişiklik yapmadan Mongrel'de geliştirmeyi seviyorum. Bunu nasıl başarabilirim? Mac OS X.

+0

Geliştirme ortamınız nasıldır? – jonnii

+0

Bunu soruyorum çünkü daha karmaşık uygulamalar için (örneğin SSL kullananlar), dev makinelerinizde çevre gibi daha fazla üretime sahip olmayı düşünmeniz gerekir ... apache/yolcu vb ... – jonnii

+0

Şu anda Mongrel'i "script/server" ile çalıştırın, ancak Yolcuya geçmeye karşı değilim. Üretimde Apache/Yolcuyu işletiyorum. –

cevap

7

IMO, SSL çalıştırmak gerekmez, bir geliştirme ortamı için gelişim

SSL hakkında endişelenmeyin. Özellikle de daha fazla kişi takımda yer aldığı için zamana veya uğraşmaya değmez. senin yolları ile ilgili olarak, ben sadece geliştirme ortamında http olarak protokol tutacak:

protocol = Rails.env.development? ? "http" : "https" 

map.resource :session, :controller => 'session', 
         :only => [:new, :create, :destroy], 
         :requirements => { :protocol => protocol } 

Şimdi, SSL entegrasyonu test eden ihtiyacını yapmak nerede evreleme çevreye olan - yeri Üretime konuşlandırmadan önce konuştuğunuz yer. Üretim ortamınızı doğru bir şekilde çoğaltmak istediğiniz yer burasıdır. Geliştirme ortamınızın üretim ortamınızla aynı şekilde eşleşmesi gerekmez.

+1

Teşekkürler, neden bu kod snippet'ini kullanmayı düşünmediğimi bilmiyorum! –

7
kullanıyorum

Raylarınızdaki uygulamalar daha karmaşık hale geldikçe ve SSL gibi gelişmiş özellikleri kullanmak istediğinizde, en iyi seçiminiz üretim ortamınızla daha yakından eşleşen bir geliştirme ortamına geçmek. Bu, kendi SSL sertifikalarınızı oluşturmanıza ve kullanıcılarınızın uygulamanızı kullanma şeklini yansıtacak şekilde test etmenize olanak tanır.

Üretimde kullandığınız gibi aynı web sunucusuna geçmenizi öneriyorum.

İlgili bir soruda ... ssl ile sınama ortamınızı nasıl yönetiyorsunuz? Bunun için şu anda yaptığım gibi rotalarımı hackliyorum. Daha iyi bir yolu var mı?

+0

Yazıma gitmeden önce yazım denetimi yapmam gerek! – jonnii

İlgili konular