2009-02-13 7 views
5

Ich habe die Dateien und die Datenbank von BradPPresents.com zu BradP.com kopiert..HTACCESS Datei verursacht internen Serverfehler

Die .htaccess-Datei wird benötigt, damit Seiten ordnungsgemäß angezeigt werden, da "Schöne URLs" von joomla! Aktiviert sind.

Sie können sehen, dass die Datenbank und alle Verbindungen bei http://bradp.com/index.php funktionieren, jedoch funktioniert http://bradp.com/home.html nicht, da es auf die .htaccess-Datei angewiesen ist, die URL zu analysieren.

Ich kopierte die identische htaccess-Datei von bradppresents.com (derzeit funktioniert gut) zu bradp.com und ich bekomme "Interner Server Fehler", wenn die Datei vorhanden ist. Sobald es gelöscht wird, verschwindet der Fehler, aber natürlich funktioniert die Seite nicht wie nötig.

Ich hoffe, dass jemand ein wenig Licht auf dieses für mich scheinen kann.

Hier ist die .htaccess-Datei

RewriteEngine On 
RewriteBase/

RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|\.aspx|\.asp|/[^.]*)$ [NC] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule (.*) index.php 

## This attempts to block the most common type of exploit `attempts` to Joomla! 
# 
# Block out any script trying to set a mosConfig value through the URL 
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR] 
# Block out any script trying to base64_encode crap to send via URL 
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR] 
# Block out any script that includes a <script> tag in URL 
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR] 
# Block out any script trying to set a PHP GLOBALS variable via URL 
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR] 
# Block out any script trying to modify a _REQUEST variable via URL 
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2}) 
# Send all blocked request to homepage with 403 Forbidden error! 
RewriteRule ^(.*)$ index.php [F,L] 

#max files size restrictions 
php_value upload_max_filesize 20M 
php_value post_max_size 20M 

Hier ist die Website Konfigurationsdatei von Apache.

<VirtualHost *:80> 
     ServerAdmin [email protected] 

     DocumentRoot /home/nick/public_html/bradp.com/html/ 
     <Directory /> 
       Options FollowSymLinks 
       AllowOverride All 
     </Directory> 
     <Directory /home/nick/public_html/bradp.com/html/> 
       Options Indexes FollowSymLinks MultiViews 
       AllowOverride All 
       Order allow,deny 
       allow from all 
     </Directory> 

     ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 
     <Directory "/usr/lib/cgi-bin"> 
       AllowOverride None 
       Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
       Order allow,deny 
       Allow from all 
     </Directory> 

     ErrorLog /var/log/apache2/error.log 

     # Possible values include: debug, info, notice, warn, error, crit, 
     # alert, emerg. 
     LogLevel warn 

     CustomLog /var/log/apache2/access.log combined 
     ServerSignature On 

    Alias /doc/ "/usr/share/doc/" 
    <Directory "/usr/share/doc/"> 
     Options Indexes MultiViews FollowSymLinks 
     AllowOverride None 
     Order deny,allow 
     Deny from all 
     Allow from 127.0.0.0/255.0.0.0 ::1/128 
    </Directory> 

</VirtualHost> 

Es ist im Wesentlichen die Standarddatei mit ein paar Änderungen.

Ich schätze wirklich jede Hilfe, die ich bekommen kann; Danke eine Million, Nick

+1

Bevor Sie gefragt werden, sollten Sie sich die Protokolldateien angesehen haben. – Gumbo

+0

Ich habe nicht einmal daran gedacht, das zu überprüfen. Vielen Dank. –

Antwort

8

Schauen Sie in Ihr Fehlerprotokoll, um die genaue Fehlermeldung zu sehen.

Aber da Sie im ersten Satz "kopiert" sagen, nehme ich an, dass Sie von einem Host zum anderen wechseln. Die wahrscheinlichste Ursache ist dann, dass das Modul rewrite nicht auf dem neuen Server geladen ist.

+0

Ich fühle mich wie ein kompletter Idiot. Du hast 100% richtig. Funktioniert jetzt mit Mod Rewrite aktiviert. –