2010-12-30 20 views
2

Ich habe gerade meine Wordpress-Website von der Verwendung von Nginx zu Apache2 bewegt, und festgestellt, dass die Homepage nicht angezeigt werden konnte, stattdessen fordert mich der Browser auf, es herunterzuladen (die Datei herunterladen ist genau das von index.php).Apache2 + Wordpress, nicht die index.php aber Download

Die seltsame Sache ist jedoch, dass außer der Homepage, alle anderen Seiten (einschließlich der einzelnen Post-Seite, WP-Admin-Seiten, RSS, Theme-Vorschau, etc.) gut funktionieren.

Und ich habe eine andere Wordpress-Website in der gleichen Maschine gehostet, funktioniert gut.

Hier ist die .htaccess-Datei: (dies ist eigentlich das, was Wordpress tat)

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule>  
# END WordPress 

Und hier ist, was ich von der access.log bekam

207.46.92.16 - - [30/Dec/2010:16:17:56 +0800] "GET /index.php HTTP/1.1" 301 - "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.1.4322; .NET CLR 3.0.04506; SLCC1; InfoPath.3; .NET4.0C; .NET4.0E; MS-RTC LM 8)" 

Eigentlich habe ich folgendes aber keine Änderung:

  1. Disable mod_rewrite Kopieren Sie die
  2. .htaccess von der korrekten wordpress Aufstellungsort

Konnte irgendjemand etwas wie dieses oder irgendeinen Anhaltspunkt auf diesem gegenüberstellen?

Ich öffne hier auch einen Link. versuchen Sie die folgenden:

  1. http://www.weigblog.com/
  2. Zugabe index.php (sorry, ich kann nicht mehr als 1 Link posten)
  3. Zugabe testphp.php
+0

Was enthält die heruntergeladene Datei? –

+0

Der Inhalt der heruntergeladenen Datei ist der gleiche mit der index.php – WeiG

Antwort

0

Wenn es eine Sache für bestimmte ist, Die Datei htaccess hat damit nichts zu tun.

Ist es vielleicht möglich, dass Ihr Server nicht weiß, dass PHP eine tatsächliche Anwendung ist? Wenn Sie die Handler nicht eingerichtet haben (AddType application/x-httpd-php .php) oder das PHP-Modul nicht von Apache geladen wird, bedeutet die Erweiterung .php absolut nichts für den Server.

Versuchen Sie eine andere Datei, genannt, sagen, info.php mit nur einer Zeile: <?php phpinfo(); ?> hochladen und in einem Browser öffnen. Wenn es funktioniert, ist PHP nicht das Problem. Wenn nicht, dann ist das dein Problem.

+0

Das ist das Merkwürdige. Ich habe eine neue Datei mit dem Namen test.php erstellt, die nur "" Enthält und im selben Verzeichnis wie index.php gespeichert ist. Die test.php funktioniert, aber index.php nicht. – WeiG

+0

Es ist eine lange Geschichte, aber verwenden Sie irgendwelche Plugins? Wenn ja, wie wäre es damit, sie zu deaktivieren? – maus

+0

Zweite Frage: Haben Sie auch eine 'index.html' Datei im root? Wenn ja, löschen Sie es und versuchen Sie es erneut. Und noch ein dritter: Funktioniert der Index, wenn Sie versuchen, ihn über den Namen zu öffnen (zB 'http: // site.tld/index.php')? Wenn ja, fehlt dem 'DirectoryIndex' der Index.php' – maus

0

Ich hatte das gleiche Problem Ich habe das Umbenennen des Webordners in/var/www/zu einem anderen Namen gelöst und funktioniert jetzt gut.

Ich hoffe, dass meine Erfahrung für jemanden nützlich sein wird.

Verwandte Themen