سؤال

لدي مجلد شبكة يتم تعيينه إلى تطبيق IIS الخاص بي كدليل افتراضي وأحاول القيام ببعض المصادقة للملفات الموجودة هناك مع IHTTPModule. لقد تحقق من أن ihttpmodule تطلق النار بشكل صحيح لأي شيء آخر في تطبيقي ، وليس فقط الملفات الموجودة في الدليل الظاهري. معظم ما وجدته هو أنه لا يمكن إدراج الدليل كتطبيق (وهو ليس كذلك) ، ويجب أن ينجح كل شيء. كان الحل الآخر الذي وجدته هو إضافة علامة الوحدة إلى العلامة ، لكن هذا لا يبدو أنه يساعد أيضًا. كل ما وجدته يتحدث عن منع هذا من الحدوث. إذن سؤالي هو ما يمكن تعيينه الذي يتسبب في عدم عمل هذا؟ هل هناك إذن تنفيذ معين يجب تعيينه؟ أي إعدادات IIS أخرى يمكن أن تسبب هذا؟ إنه تطبيق MVC ، وهذه هي الطريقة التي يتم بها وضع هيكل الدليل الخاص بي:

الخادم/التطبيق <- مجلد التطبيق الخاص بي

الخادم/التطبيق/المحتوى/التنزيلات <- التنزيلات هو الدليل الظاهري

هل يجب علي إضافة الدليل الظاهري مباشرة ضمن دليل التطبيق الخاص بي؟ هل هذا جزء من المشكلة؟ ليس لدي تحكم مباشر في الخادم الذي يعمل عليه الرمز الخاص بي ، لذا فإن اختبار الأشياء خارجًا قليلاً من الألم ... لذلك كنت أبحث عن المزيد من الأفكار قبل البدء في إرسال رسائل بريد إلكتروني إلى أشخاص عملي. شكرًا!

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

المحلول

حسنًا ، أعتقد أنني وجدت ما هي المشكلة .... يبدو أنه افتراضيًا ، لا يمر IIS6 ، أو ملفات zip ، أو أي شيء من هذا القبيل من خلال وقت تشغيل .NET. إنه يفعل ذلك فقط مع ملفات .aspx وما شابه ، لذلك لن يطلق النار على ihttpmodule. يبدو أنه يمكنك إجباره على إضافة رسم خرائط لهذا الامتداد ، ولكن هل هناك رمز يعمل لهذا؟ أم أن هذه هي الطريقة الوحيدة؟

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