استضافة المواقع الحد الأقصى طول عنوان URL؟

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

  •  23-08-2019
  •  | 
  •  

سؤال

أنا تصميم تطبيق ويب هو التعادل في تطبيق iPhone الخاص بي. يرسل عناوين URL كبيرة على نطاق واسع إلى خادم الويب (15000 حول.) كنت باستخدام nearlyfreespeech.net، لكنهم يدعمون عناوين URL فقط حتى 2000 حرفا. كنت أتساءل عما إذا كان أي شخص يعرف استضافة المواقع التي ستدعم عناوين URL كبيرة حقا؟ شكرا، إسحاق

يحرر: يحتاج برنامجي إلى فتح صورة في رحلات السفاري. يمكنني القيام بهذه الطريقةتين:

  • أرسلها Base64 المشفرة في عنوان URL و Echo فقط معلمات الاستعلام.
  • أولا نشرها إلى الخادم في طلبي، ثم يرسل الخادم معرفا فريدا بعد تخزين الصورة في قاعدة بيانات، مما أود إلحاق بعنوان URL الذي سأفتحه في Safari الذي استعاد الصورة من قاعدة البيانات وحذفها من قاعدة البيانات.

كما ترى، أنا كسول، وأنا أعلم أن Safari المحمول يمكن أن يدعم ما يصل إلى 80 000 حرفا، لذلك أعتقد أن هذه طريقة موافق للقيام بذلك. إذا كان هناك شيء خاطئ حقا في هذا، من فضلك قل لي.

يحرر: انتهى بي الأمر في القيام بذلك بطريقة المشاركة المناسبة. شكرا.

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

المحلول

إذا كنت ترسل عناوين URL طويلة بحرف 15000 شخص، في كل ذلك

نص Alt http://img16.imageshack.us/img16/3847/youredoingitwronga.jpg.

استخدم شيئا مثل وظيفة HTTP بدلا من ذلك.

القيود التي تجري ضدها ليست مشكلة مع المضيفين - إنها حقيقة أن خوادم الويب لديها حد لطول عنوان URL. وفق هذه الصفحة, ، يحدك Apache لك لحوالي 4K، ويحدك IIS إلى 16K بشكل افتراضي.

نصائح أخرى

على الرغم من أنه لا يجيب بشكل مباشر على سؤالك، وليس هناك أقصى طول رسمي لعنوان URL، فإن المتصفحات والخوادم لديها حدود عملية - انظر http://www.boutell.com/newfaq/misc/urllength.html. لبعض التفاصيل. باختصار، نظرا لأن IE (على الأقل بعض الإصدارات المستخدمة) لا تدعم عناوين URL أكثر من 2،083 حرفا، فمن المحتمل أن يبقى أقل من هذا الطول.

إذا كنت بحاجة إلى فتحه في Safari، ولا يحتاج الخادم إلى المشاركة، فلماذا لا تستخدم data: أوري?

إرسال Uris طويل عبر الشبكة هو في الأساس أبدا الشيء الصحيح الذي يجب القيام به. كما لاحظت، لا تدعم بعض مضيفات الويب URIS طويلة. قد تخنق بعض خوادم الوكيل أيضا عناوين URL الطويلة، مما يعني أن تطبيقك قد لا يعمل للمستخدمين الذين يقفون وراء هؤلاء الوكلاء. إذا كنت بحاجة إلى ميناء تطبيقك إلى متصفح مختلف، فقد لا يدعم المتصفحات الأخرى URIS التي طالما.

إذا كنت بحاجة إلى الحصول على بيانات تصل إلى خادم، فاستخدم منشورا. نعم، إنها رحلة اجتماعية إضافية، ولكنها ستكون أكثر موثوقية.

أيضا، إذا كنت تقوم بتحميل البيانات إلى الخادم باستخدام طلب الحصول عليها، فأنت عرضة لجميع أنواعها تزوير عبر الموقع الهجمات؛ في الأساس، يمكن للمهاجم خداع المستخدم في التحميل، كما يقول الماعز إلى حسابهم ببساطة عن طريق الحصول عليها للنقر على رابط (ربما مخفي tinyurl. أو خدمة تقصير عناوين URL أخرى، أو جزءا لا يتجزأ من مجرد رابط في صفحة ويب عندما لا ينظرون عن كثب على عنوان URL ينقرون).

يجب ألا تستخدم أبدا الحصول على بيانات إرسال إلى الخادم، بما يتجاوز معلمات الاستعلام التي لا تغير أي شيء على الخادم بالفعل.

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