मैं एक वर्चुअल होस्ट कैसे बनाऊं जो http और https दोनों के साथ काम करता है?


8

इस तरह मैंने एक वर्चुअल होस्ट की स्थापना की है:

<VirtualHost mysite> 
  <Directory "/Users/myusername/sitefolder"> 
    Options +FollowSymlinks
    AllowOverride All 
    Order Allow,Deny
    Allow from all
  </Directory> 
  DocumentRoot "/Users/myusername/sitefolder"
  ServerName mysite
  SSLEngine on
  SSLCertificateFile /Users/myusername/certs/server.crt
  SSLCertificateKeyFile /Users/myusername/certs/server.key
</VirtualHost>

इस कॉन्फ़िगरेशन के साथ, मैं केवल https के साथ अपनी साइट देख सकता हूं, लेकिन http नहीं। जब मैं SSLEngine को बंद कर देता हूं तब मैं अपनी साइट को https के साथ नहीं देख सकता, लेकिन http ठीक काम करता है।

मैं उपरोक्त पंक्तियों को कैसे समायोजित कर सकता हूं ताकि मैं http और https दोनों का उपयोग करके अपनी साइट देख पाऊं?

मैं OSX शेर का उपयोग कर रहा हूं, लेकिन मुझे नहीं लगता कि यह इतना मायने रखता है।

धन्यवाद।

जवाबों:


7

इस प्रकार आपको दो वर्चुअल होस्ट बनाने की आवश्यकता है:

<VirtualHost mysite:80> 
  <Directory "/Users/myusername/sitefolder"> 
    Options +FollowSymlinks
    AllowOverride All 
    Order Allow,Deny
    Allow from all
  </Directory> 
  DocumentRoot "/Users/myusername/sitefolder"
  ServerName mysite
</VirtualHost>


<VirtualHost mysite:443> 
  <Directory "/Users/myusername/sitefolder"> 
    Options +FollowSymlinks
    AllowOverride All 
    Order Allow,Deny
    Allow from all
  </Directory> 
  DocumentRoot "/Users/myusername/sitefolder"
  ServerName mysite
  SSLEngine on
  SSLCertificateFile /Users/myusername/certs/server.crt
  SSLCertificateKeyFile /Users/myusername/certs/server.key
</VirtualHost>

पहला एक नियमित HTTPमेजबान है, जबकि दूसरा आपके HTTPSट्रैफ़िक को संभालता है।


क्या कॉमन कोड को किसी अलग फ़ाइल में ले जाने और रखरखाव को आसान बनाने के लिए इसे लागू करने का कोई तरीका है?
पोंकाडूडल

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.