لماذا هو بلدي .htaccess www. القوة التي تسبب في فشل أشكال خارجية دون شبكة الاتصالات العالمية.

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

سؤال

بسبب مشاكل Ajax المجال الغريبة، مما يؤدي إلى فشل طلبات AJAX عند عدم استخدام شبكة الاتصالات العالمية. (يتم تقديم معالج PHP يتواصل مع الطلب في مسار نسبي، لذلك لا يمكن أن يكون مشكلة عنوان أو شيء ما - هذا ما هو هذا السؤال حول رغم ذلك)، لقد أجبرت شبكة الاتصالات العالمية. باستخدام .htaccess:

#enable rewrite engine and set options
Options +FollowSymLinks
RewriteEngine on

#only www.
RewriteCond %{HTTP_HOST} !^www.domain.com$
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301]

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

كيف يمكنني تغيير ملف .htaccess الخاص بي للتأكد من إرسال هذه النماذج أيضا دون شبكة الاتصالات العالمية.؟

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

المحلول

يمكنك استخدام

RewriteCond %{REQUEST_METHOD} ^GET$

الذي سيعيد كتابة الطلبات فقط، ترك طلبات النشر كما هي.

نصائح أخرى

معظم المتصفحات لا تتوجه البيانات المنشورة عند إعادة توجيه 301 ... لذلك سترى تلك الطلبات كحصل على عنوان URL الخاص بك بدلا من ذلك.

هذا السلوك غير متوافق من الناحية الفنية ولكن يبدو أنه النهج القابل للقبول.

(راجع http://www.lassosoft.com/documentation/totw/index.lasso؟9083., http://www.nkuttler.de/2008/11/09/mailman-and-301-redirects/.)

ربما حاول 307 إعادة توجيهات مؤقتة لأشكالك؟ يوجه 307 على وجه التحديد المتصفح لإعادة نشر البيانات. http://en.wikipedia.org/wiki/list_of_http_status_codes#3xx_redirection.

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