में विशेष वर्णों को हल करने की Django समस्या हमारे पास Django द्वारा बनाई गई एक वेबसाइट है।यूआरएल
http://site/tags/c%23/
"ग% 23" के "सी #", जो स्थानीय रूप से ठीक काम करता है urlencode है: और वहाँ कोई समस्या नहीं है जब स्थानीय काम के माहौल पर पहुँच इस यूआरएल है। लेकिन हम होस्टिंग सर्वर (अपाचे + FastCGI) Bluehost पर तैनात करने के बाद, इस URL ऐसा किसी नए पते पर हल किया गया है:
http://site/t/tags/c/
वह बहुत अजीब है। शायद यह Django की समस्या नहीं है, लेकिन अपाचे यूआरएल के पुनर्लेखन के साथ कुछ करने के लिए है। यदि आपके पास कोई विचार या सुझाव है कि इसे कैसे ठीक किया जाए तो कृपया मुझे बताएं। अग्रिम धन्यवाद।
यहाँ .htaccess फाइल विचार किया जा सकता है:
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 वर्ण के रूप में
आप अन्य पात्रों के साथ की कोशिश की है:
अन्य प्रतीकों के लिए अब तक कोई समस्या नहीं मिली है। # कभी-कभी स्टैक ओवरफ्लो जैसे संदर्भ में उपयोगी होता है, हम इस यूआरएल का उपयोग "सी #" टैग को व्यक्त करने के लिए करते हैं: http: //stackoverflow.com/questions/tagged/c%23 – chagel