2014-04-23 23 views
5

मैं अपने स्थानीय होस्ट में मेरी laravel साइट चल रहा हूँ, ठीक काम करता है। लेकिन जब मैं होस्टिंग सर्वर में अपनी साइट चलाने की कोशिश करता हूं, तो मुझे 500 आंतरिक सर्वर त्रुटि मिली? क्या यह मेरी .htaccess फ़ाइल या I remove public url की वजह से है?Laravel - 500 आंतरिक सर्वर त्रुटि

मेरे .htaccess फाइल

<IfModule mod_rewrite.c> 
    <IfModule mod_negotiation.c> 
     Options -MultiViews 
    </IfModule> 

    RewriteEngine On 

    # Redirect Trailing Slashes... 
    RewriteRule ^(.*)/$ /$1 [L,R=301] 

    # Handle Front Controller... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^index.php [L] 
</IfModule> 
+0

आप दूरस्थ और अपने स्थानीय सिस्टम के बारे में कुछ जानकारियां है? – Stony

+0

आपका क्या मतलब है? मैं पीछा नहीं कर रहा हूँ। –

+0

विंडोज, मैक या लिनक्स? आप सिस्टम पर क्या उपयोग करते हैं? यदि आप mod_negotiation.c को हटाते हैं तो क्या होगा? और यदि आप कम से कम mod_rewrite मॉड्यूल ब्लॉक को फिर से लिखते हैं? फिर आप शर्मिंदा हो सकते हैं कि आपके पास वाक्यविन्यास त्रुटि है। – Stony

उत्तर

0

वाकई पीएचपी के समर्थित संस्करण का उपयोग कर रहे हैं और अपने फ़ोल्डर्स 755 अनुमति है कि सुनिश्चित करें।

तुम भी क्या 500 त्रुटि के कारण के बारे में थोड़ा और अधिक जानने के Laravel की लॉग फ़ाइल देख सकते हैं। अगर वहाँ लॉग फ़ाइल में कोई प्रविष्टि नहीं है, समस्या .htaccess से आ सकते हैं।

2

टर्मिनल पर इस प्रयास करें:

sudo chmod -R 755 <your_laravel_project> 

और

chmod -R o+w <your_laravel_project>/storage 
0

मैं अपने साझा होस्टिंग प्रदाता के साथ एक समान समस्या हुई थी। Laravel फ़ाइलें जो सीधे आगंतुकों ब्राउज़र के लिए उपलब्ध हैं के लिए public फ़ोल्डर का उपयोग करता है। यह साझा होस्टिंग पर वेबस्पेस रूट होना चाहिए।

समस्या तब होती है जब index.php/public में कहा जाता है और यह वेबस्पेस रूट के बाहर फ़ाइलों (ऊपर एक स्तर) तक पहुंचने का प्रयास करता है। आम तौर पर इसकी अनुमति नहीं है।

आप (या अपने होस्टिंग प्रदाता) php सेटिंग्स में open_basedir मूल्य बदलने की जरूरत है।

मेरी होस्टिंग पर इसे इस तरह देखा:

{WEBSPACEROOT}{/}{:}{TMP}{/} 

मैं

{WEBSPACEROOT}{/}{:}{TMP}{/}{:}{WEBSPACEROOT}{/../} 

करने के लिए इसे बदल गया और यह काम किया।

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