سؤال

لدي قائمة بالمجلدات في htdocs. أريد أن أدرج في ملف تكوين Apache الخاص بي، لكنني لا أريد تضمين كل دليل موجود يدويا، حيث يمكن إضافة المزيد لاحقا.

لدي 5 أو نحو ذلك مجلدات إعادة توجيه بشكل صحيح، إعادة توجيه آخر يفعل ذلك index.htm. في ال htdoc.مجلد وآخر يقوم به بخادم الويب Cherrypy الذي لدي. هذا هو التكوين الخاص بي:

RewriteRule ^/static/(.*) /static/$1 [nc,l]
RewriteRule ^/brands/(.*) /brands/$1 [nc,l]
RewriteRule ^/downloads/(.*) /downloads/$1 [nc,l]
RewriteRule ^/events/(.*) /events/$1 [nc,l]
RewriteRule ^/js/(.*) /js/$1 [nc,l]
RewriteRule ^/olddesign(.*) /$1 [nc,l]
RewriteRule ^/ http://127.0.0.1:8080/$1 [proxy]

كيف أذهب حول التأكد من أن كل مجلد في htdocs. يتم إعادة توجيهها، / olddesign. يذهب إلى المكان الصحيح وعدم إدخال دليل (على سبيل المثال، تماما مثل الدخول http: // localhost /) سوف توجه إلى خادم الويب Cherrypy؟

سيتم تقدير أي مساعدة إلى حد كبير.

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

المحلول

جرب هذه القواعد:

RewriteRule ^/olddesign(.*) /$1 [nc,l]
RewriteCond $0 =/ [OR]
RewriteCond %{DOCUMENT_ROOT}$0 !-d
RewriteRule ^/[^/]* http://127.0.0.1:8080%{REQUEST_URI} [proxy]

سيتم تطبيق القاعدة الأخيرة إلا إذا كان مسار URL المطلوب فقط / أو إذا لم يتم تعيين الجزء الأول من المسار إلى دليل موجود.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top