مشكلة بفك حل أحرف خاصة في رابط
-
03-07-2019 - |
سؤال
لدينا موقع على شبكة الانترنت التي جانغو. وليس هناك أي مشكلة عند الوصول رابط التالي على بيئة العمل المحلية:
http://site/tags/c%23/
و"ج٪ 23" هي urlencode من "ج #"، الذي يعمل بشكل جيد محليا. ولكن بعد أن نشر على BLUEHOST استضافة الخادم (اباتشي + fastcgi)، وقد تم حل هذه URL إلى عنوان جديد مثل هذا:
http://site/t/tags/c/
وهذا غريب جدا. ربما انها ليست مشكلة لجانغو، ولكن لها أن تفعل شيئا مع إعادة كتابة اباتشي رابط ل. إذا كان لديك أي فكرة أو اقتراح كيفية إصلاح هذه واسمحوا لي أن أعرف. يرجع الفضل في ذلك مسبقا.
وهنا يمكن اعتبار ملف هتكس:
AddHandler fcgid-script .fcgi
#AddHandler fastcgi-script .fcgi
#AddHandler application/cgi .fcgi
#AddHandler cgi-script .fcgi
RewriteEngine On
RewriteBase /
#static file setting
RewriteRule ^(media/.*)$ - [L]
RewriteRule ^(static/.*)$ - [L]
RewriteCond %{REQUEST_URI} !(dispatch.fcgi)
RewriteRule ^(.*)$ dispatch.fcgi/$1 [L]
وملف dispatch.fcgi:
#!/home/***/python/bin/python
import sys, os
# Add a custom Python path.
sys.path.insert(0, "/home/***/python")
sys.path.insert(0, "/home/***/working/Django-1.0")
os.chdir("/home/***/working/Django-1.0/project")
os.environ['DJANGO_SETTINGS_MODULE'] = "project.settings"
from django.core.servers.fastcgi import runfastcgi
runfastcgi(["method=threaded", "daemonize=false"])
على UPDAET:؟ إذا هذا هو سبب الإعدادات في httpd.conf، كيف يمكنني تجاوز في ملف .htaccess في حين لا تملك صلاحية لذلك
المحلول
وفقط بعض النصائح قبل الذهاب أبعد من ذلك:
ولقد حاولت مع الشخصيات الأخرى مثل مساحة (20٪) أو حرف ASCII معلمة؟ أيضا، هل حاولت وضع الشخصيات الأخرى بعد 23٪ (غير مائلة) لمعرفة ما إذا كانت جردت أيضا؟
وتخمين واحد يمكن أن يكون ذلك كما يعتبر # باعتباره مرتكزا على الصفحة الحالية، و# و كل ما سيتم بعد تجريده في إعادة كتابة.
نصائح أخرى
وأنا يجب أن نتفق مع الإجابة الأولى - وبدون الوصول إلى تكوين اباتشي، قد تكون من الحظ. استخدام 'CSHARP "أو شيء من هذا في هذا السياق قد يكون أفضل طريقة للذهاب.
و# له معنى خاص في URI، نفس / أو؟ هل. هل لديك هذه المسألة مع رموز أخرى؟ في نهاية المطاف، يجب أن لا يكون باستخدام علامة # في URI على أي حال، إلا إذا كنت في اشارة الى مرتكزا على الصفحة.
http://httpd.apache.org/docs/2.2/rewrite /rewrite_guide.html
وقراءة قسم إعادة كتابة مرساة.