2010-07-20 16 views
5

मैं Codeigniter OpenID library का उपयोग करने की कोशिश कर रहा हूं और सीआई के बिना .htaccess के डिफ़ॉल्ट कॉन्फ़िगरेशन के साथ सब कुछ ठीक काम करता है।कोडिग्निटर, ओपनआईडी और .htaccess

जब मैं बदल रहा config.php और .htaccess मैं 404 पृष्ठ नहीं मिला हो जब मैं अपने openid सत्यापित करने का प्रयास द्वारा index.php हटाने (http://ci.dlsb.eu/test/)

किसी को भी मुझे बता सकते हैं जहां मैं गलत हूँ?

config.php

$config['index_page'] = ""; 

.htaccess

RewriteEngine on 
RewriteBase/
RewriteCond $1 !^(index\.php|images|robots\.txt) 
RewriteRule ^(.*)$ /index.php/$1 [L] 

उत्तर

5

एक प्रति निर्देशिका संदर्भ है, जो, मैं क्या बता सकता से भी होता है में PATH_INFO बनाने के लिए आपका RewriteRule प्रयास सही ढंग से काम करने के लिए अनुरोध प्रसंस्करण चरण में देर से।

सबसे अच्छा समाधान बस ऐसा नहीं करने के लिए, CodeIgniter यह की आवश्यकता नहीं है के रूप में कार्य करने के लिए है:

RewriteEngine on 
RewriteBase/
RewriteCond $1 !^(index\.php|images|robots\.txt) 
RewriteRule ^(.*)$ /index.php 

CodeIgniter, यह पता लगाने की क्या उचित अनुरोध अपने आप ही था सक्षम होना चाहिए कि आपके द्वारा दी $config['uri_protocol']AUTO पर छोड़ दिया गया। यदि नहीं, तो आपको इसे AUTO या REQUEST_URI पर सेट करना चाहिए।

+0

ठीक है, मैंने अपना .htaccess तय किया है, $ config ['uri_protocol'] REQUEST_URI पर सेट है, लेकिन मुझे अभी भी वही त्रुटि मिलती है ... –

+1

हाँ, मैं थोड़ा ऑफ-बेस हो सकता था। ऐसा इसलिए है क्योंकि जिस फ़ॉर्म को सबमिट किया गया यूआरएल पीछे पीछे स्लैश नहीं है, इसलिए कोडइग्निटर की रूटिंग किसी भी तरह विफल हो रही है। मैं यह देखने के लिए जांच करूंगा कि यह क्यों हो सकता है और आपको यह बताएगा कि आप इसे कैसे ठीक कर सकते हैं। –

+1

जब मैं $ config ['url_suffix'] = "/" सेट करता हूं; सबकुछ ठीक काम करता है। धन्यवाद टिम! –

संबंधित मुद्दे