2016-05-17 3 views
0

Ich habe eine Opencart-Installation auf meinem lokalen Server heruntergeladen, um sie als Test zu verwenden, und kann die Site nicht anzeigen. Wenn ich die Standard-htaccess-Datei verwende, gibt der Browser einen Fehler von 500 zurück und wenn ich die htaccess-Datei entferne, funktionieren die SEO-Links nicht. (404)Interner Serverfehler - Opencart

Irgendwelche Ideen?

Meine .htaccess-Datei

# 1.To use URL Alias you need to be running apache with mod_rewrite enabled. 

# 2. In your opencart directory rename htaccess.txt to .htaccess. 

# For any support issues please visit: http://www.opencart.com 

Options +FollowSymlinks 

# Prevent Directoy listing 
Options -Indexes 

# Turn on Expires and set default to 0 
ExpiresActive On 
ExpiresDefault A0 

# Set up caching on media files for 5 weeks 
<FilesMatch "\.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$"> 
ExpiresDefault A3024000 
Header append Cache-Control "public" 
</FilesMatch> 

# Set up caching on media files for 5 weeks 
<FilesMatch "\.(gif|jpg|jpeg|png|swf)$"> 
ExpiresDefault A3024000 
Header append Cache-Control "public" 
</FilesMatch> 

# Set up 1 day caching on commonly updated files 
<FilesMatch "\.(xml|txt|html|js|css)$"> 
ExpiresDefault A86400 
Header append Cache-Control "proxy-revalidate" 
</FilesMatch> 

# Force no caching for dynamic files 
<FilesMatch "\.(php|cgi|pl|htm)$"> 
ExpiresActive Off 
Header set Cache-Control "private, no-cache, no-store, proxy-revalidate, no-transform" 
Header set Pragma "no-cache" 
</FilesMatch> 


<IfModule mod_deflate.c> 
    <filesMatch "\.(js|css|html|php)$"> 
     SetOutputFilter DEFLATE 
    </filesMatch> 
</IfModule> 

# Prevent Direct Access to files 
<FilesMatch "\.(tpl|ini|log)"> 
Order deny,allow 
Deny from all 
</FilesMatch> 

# SEO URL Settings 
RewriteEngine On 
# If your opencart installation does not run on the main web folder make sure you folder it does run in ie./becomes /shop/ 

RewriteBase/
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] 
RewriteRule ^(.*)$ http://%1/$1 [R=301,L] 

RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L] 
RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L] 
RewriteRule ^download/(.*) /index.php?route=error/not_found [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css) 
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA] 

### Additional Settings that may need to be enabled for some servers 
### Uncomment the commands by removing the # sign in front of it. 
### If you get an "Internal Server Error 500" after enabling any of the following settings, restore the # as this means your host doesn't allow that. 

# 1. If your cart only allows you to add one item at a time, it is possible register_globals is on. This may work to disable it: 
# php_flag register_globals off 

# 2. If your cart has magic quotes enabled, This may work to disable it: 
# php_flag magic_quotes_gpc Off 

# 3. Set max upload file size. Most hosts will limit this and not allow it to be overridden but you can try 
# php_value upload_max_filesize 999M 

# 4. set max post size. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields 
# php_value post_max_size 999M 

# 5. set max time script can take. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields 
# php_value max_execution_time 200 

# 6. set max time for input to be recieved. Uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields 
# php_value max_input_time 200 

# 7. disable open_basedir limitations 
# php_admin_value open_basedir none 
+0

hast du dein Webserver Fehlerprotokoll angeschaut? Vielleicht dort anfangen? Auf welchem ​​Webserver und welcher Version laufen Sie? – billynoah

Antwort

0

.htaccess Dateien sind im Allgemeinen sehr sinnvoll zu Syntax und jeder Fehler kann einen HTTP 500-Fehler aufrichten. Fehler können mit Syntaxfehlern und/oder Direktiven verknüpft werden, die nach dem httpd-Upgrade nicht unterstützt werden.

Ich schlug vor, Sie Schritt für Schritt zu testen, indem Sie eine Sicherungskopie Ihrer .htaccess erstellen und mit einer leeren Datei beginnen, die einige Abschnitte hinzufügt, bis Ihr Server den Fehler anzeigt.

Wenn Sie es haben, überlegen Sie, das Problem von Natur aus zu lösen.

0

Beim Debuggen von 500 Serverfehlern in OpenCart müssen Sie zunächst in das Fehlerprotokoll Ihres Servers schauen und die genaue Fehlermeldung finden.

Wenn es nicht sind, können Sie brauchen, um sie durch Einstellen der error_reporting, display_errors und log_errors Einstellungen in der PHP-Konfiguration explizit zu ermöglichen. Sie können sie auch vorübergehend direkt in der Datei index.php ändern.

Sobald Sie die genaue Fehlermeldung kennen, ist die Fehlerbehebung ein einfacher Vorgang.

Wir haben einige der häufigsten OpenCart-Fehlermeldungen mit 500 Serverfehlern in unserem Blogpost behandelt: Server Errors and Blank Pages in OpenCart: Most Common Causes.

Ich würde empfehlen, zu versuchen, leere Seiten und 500 Serverfehler zu beheben, ohne in das Fehlerprotokoll schauen zu können. Diese Probleme können durch so ziemlich alles verursacht werden, angefangen bei Ihrer Serverkonfiguration bis hin zu kaputten OpenCart-Codes, so dass Sie wirklich wissen müssen, womit Sie es zu tun haben.

In Ihrem speziellen Fall ist es wahrscheinlich, dass Ihre Serverkonfiguration verbietet, dass bestimmte Regeln in der .htaccess-Datei gespeichert werden.