باستخدام mod_rewrite تقليد SSL الظاهري المضيفين ؟

StackOverflow https://stackoverflow.com/questions/8355

  •  08-06-2019
  •  | 
  •  

سؤال

ما هي أفضل طريقة بشفافية إعادة كتابة URL عبر اتصال SSL مع اباتشي 2.2?

أباتشي 2 لا تدعم أصلا متعددة اسم الظاهري القائم على المضيفين على اتصال SSL و سمعت أن mod_rewrite يمكن أن تساعد في هذا.وأود أن تفعل شيئا من هذا القبيل:

يجب إعداد الملقم بحيث المواقع التي يمكن الوصول إليها من قبل

https://secure.example.com/dbadmin

ولكن أود أن يكون هذا https://dbadmin.example.com

كيف يمكنني إعداده حتى كتابة القاعدة كتابة dbadmin.example.com إلى secure.example.com/dbadmin ولكن دون عرض كتابة على العميل شريط العنوان (أيالعميل سوف لا تزال ترى dbadmin.example.com) ، في جميع أنحاء https ؟

هل كانت مفيدة؟

المحلول

تكوين واحد VirtualHost لخدمة كل secure.example.com و dbadmin.example.com (مما يجعلها فقط *:443 VirtualHost يحقق هذا).ثم يمكنك استخدام mod_rewrite لضبط URI على طلبات dbadmin.example.com:

<VirtualHost *:443>
    ServerName secure.example.com
    ServerAlias dbadmin.example.com

    RewriteEngine on
    RewriteCond %{SERVER_NAME} dbadmin.example.com
    RewriteRule !/dbadmin(.*)$ /dbadmin$1
</VirtualHost>

شهادة SSL الخاصة بك سوف تحتاج إلى أن تكون صالحة لكل secure.example.com و dbadmin.example.com.يمكن أن يكون شهادة البدل كما ذكر تيري Lorber, أو يمكنك استخدام subjectAltName مجال لإضافة أسماء المضيف.

إذا كنت تواجه مشكلة في أول إعداده على <VirtualHost *> والتحقق من أنه يعمل بدون SSL.اتصال SSL و شهادة طبقة منفصلة من التعقيد التي يمكنك تعيين ما يصل بعد URI إعادة كتابة العمل.

نصائح أخرى

ما لم يكن لديك شهادة SSL "البدل" أو في مواقع متعددة نوع, ثم أنا لا أعتقد أن هذا العمل.كتابة عرض في المتصفح و الاسم في شريط العناوين يجب أن تكون سارية المفعول ضد الشهادة ، أو المستخدمين سوف نرى الأمن الخطأ (التي يمكن أن تقبل دائما والاستمرار ، ولكن هذا لا يبدو مثل ما تريد).

المزيد هنا.

هناك الأباتشي mod_rewrite, أو يمكنك إعداد اباتشي مباشرة https://dbadmin.example.com إلى path/to/سبيل المثال.com/dbadmin على الملقم

<VirtualHost *>
ServerName subdomain.domain.com
DocumentRoot /home/httpd/htdocs/subdomain/
</VirtualHost>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top