2010-05-22 15 views
10

पर POST अनुरोध प्राप्त नहीं होगा जब POST अनुरोध "http://domain.com/directory/" पर भेजा जाता है, तो POST डेटा प्राप्त नहीं होता है। लेकिन अगर इसे "http://domain.com/directory/index.php" भेजा जाता है तो यह प्राप्त होता है।PHP/निर्देशिका/केवल /directory/index.php

डायरेक्टरी कहलाते समय मैं इसे कैसे काम कर सकता हूं? धन्यवाद!

+3

कोई कारण नहीं है कि उसे उस अनुरोध पर POST क्यों नहीं मिलेगा, केवल एक चीज जिसे मैं सोच सकता हूं, एक संभावित रीडायरेक्ट है, शायद अगर आपने कुछ फंकी। Htaccess फ़ाइलें सेट की हैं .. –

+5

यदि आप "http" खोलते हैं : //domain.com/directory/ "ब्राउज़र विंडो में, क्या आप उस पते पर सामग्री देखते हैं, क्या यह एक त्रुटि संदेश दिखाता है, या ब्राउज़र पता" http://domain.com/directory/index "में बदल जाता है। php "? –

+5

पुनर्निर्देशन का एक और संभावित स्रोत "/ निर्देशिका /" के बजाय "/ निर्देशिका" का उपयोग कर रहा है। पिछला स्लैश भूलना एक रीडायरेक्ट भी ट्रिगर कर सकता है। – janmoesen

उत्तर

4

क्या आपने फ़ायरफ़ॉक्स के लिए HttpFox जैसे टूल का उपयोग करने का प्रयास किया है यह देखने के लिए कि क्या आप निर्देशिका पर अनुरोध करते हैं, तो आपको रीडायरेक्ट किया जा रहा है? मुझे पता है कि एक रीडायरेक्ट एक POST अनुरोध को मार सकता है क्योंकि यह एक GET अनुरोध में परिवर्तित हो जाता है।

4

चूंकि लुकानोस ने कहा, क्या वेब सर्वर index.php पर रीडायरेक्ट कर रहा है? अगर आप रीडायरेक्ट करते हैं तो पोस्ट डेटा पृष्ठों के बीच "खो गया" हो सकता है। जीईटी आज़माएं और जांचें कि यूआरएल सही डेटा के साथ समाप्त होता है या नहीं।

6

यदि आप अपाचे चला रहे हैं, तो जांचें कि mod_dir मॉड्यूल सक्षम है और सही तरीके से कॉन्फ़िगर किया गया है या नहीं। ये मेरी dir.conf की सामग्री हैं:

<IfModule mod_dir.c> 
    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm 
</IfModule> 
+0

यह नियम भी .htaccess में/निर्देशिका/ –

+1

के अंतर्गत स्थित हो सकते हैं लेकिन जब मैं निर्देशिका को एक्सेस करता हूं तो मैं index.php देख सकता हूं, यह समस्या नहीं है। केवल पोस्ट खो गया है। – Lazlo

0

index.html index.php के साथ-साथ, बस नाम बदलने index.html फ़ाइल किसी और फ़ाइल को नष्ट निर्देशिका मौजूद होता है तो क्योंकि आप केवल निर्देशिका के लिए पथ देते हैं, index.html हमेशा सक्षम हो जाता है इससे कोई फर्क नहीं पड़ता index.php अभी भी एक ही निर्देशिका में मौजूद है।

+0

नहीं, हमेशा नहीं, यह अपाचे –

3

".htaccess" फ़ाइल के अंदर/directory/बनाएं इस सामग्री

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ index.php [NC,L] 

यह रूट करने के लिए सभी अनुरोध है कि शारीरिक रूप से संभव नहीं हैं अनुक्रमण करने के लिए (के बाद से कोई फ़ाइल या फ़ोल्डर को अनुरोध के लिए मौजूद हैं) सर्वर बताता है के साथ। PHP, इसका लाभ यह है कि आपकी .css फ़ाइल .js, .jpg फ़ाइलें index.php पर रूट नहीं होंगी।

+0

में निर्देशिका इंडेक्स सेटिंग के क्रम पर निर्भर करता है यह सही है और मेरे लिए क्या काम करता है। – KyleT

+0

मैंने कोशिश की लेकिन यह काम नहीं किया :( –