Links funtionieren nicht mehr nach Downgrade auf XAMPP 1.7.1
am 11.10.2009 - 13:24 Uhr in
Hallo, mein Problem ist folgendes:
Ich hatte Drupal zunächst unter XAMPP 1.7.2 installiert. Wegen diverser Probleme mit PHP 5.3 entschied ich mich, auf XAMPP 1.7.1 umzusteigen.
Nachdem ich nun unter XAMPP 1.7.1 das Drupalverzeichnis und die Datenbank unverändert wieder eingespielt habe funktioniert Drupal nicht mehr richtig. Immer wenn ich nun irgendeinen Menüpunkt anklicke wird nicht mehr die entsprechende Drupalseite im Browserfenster angezeigt, sondern der Brower (Firefox und auch Explorer) öffnet das Menü zum speichern von Dateien so, als ob ich einen Download machen wollte. Ich kann keinen Link, kein Menü mehr aufrufen, also auch das Verwaltungsmenü nicht mehr.
Rechnerneustart und erneute Installation von XAMPP brachten keine Veränderung.
Kann mir jemand helfen?
Jürgen
- Anmelden oder Registrieren um Kommentare zu schreiben

Existiert die Datei .htaccess?
am 11.10.2009 - 13:32 Uhr
Existiert die Datei .htaccess im Drupal root?
------------------------
Quiptime Group
Danke für die schnelle Antwort!
am 11.10.2009 - 14:08 Uhr
Ja, die Datei .htaccess existiert im Stamverzeichnis. Es ist genau dieselbe wie vor dem Umstieg auf XAMPP 1.7.1 bzw. dem Restore. Mit der hat es vorher funktioniert. Die vielen mit # auskommentierten Zeilen waren also auch vorher schon auskommentiert.
Hier der Inhalt:
AddType application/x-httpd-php5 .php .php5
#
# Apache/PHP/Drupal settings:
#
# Protect files and directories from prying eyes.
Order allow,deny
# Don't show directory listings for URLs which map to a directory.
Options -Indexes
# Follow symbolic links in this directory.
Options +FollowSymLinks
# Make Drupal handle any 404 errors.
ErrorDocument 404 /index.php
# Force simple error message for requests for non-existent favicon.ico.
# There is no end quote below, for compatibility with Apache 1.3.
ErrorDocument 404 "The requested file favicon.ico was not found.
# Set the default handler.
DirectoryIndex index.php
# Override PHP settings. More in sites/default/settings.php
# but the following cannot be changed at runtime.
# PHP 4, Apache 1.
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass
php_value mbstring.encoding_translation 0
# PHP 4, Apache 2.
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass
php_value mbstring.encoding_translation 0
# PHP 5, Apache 1 and 2.
php_value magic_quotes_gpc 0
php_value register_globals 0
php_value session.auto_start 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass
php_value mbstring.encoding_translation 0
# Requires mod_expires to be enabled.
# Enable expirations.
ExpiresActive On
# Cache all files for 2 weeks after access (A).
ExpiresDefault A1209600
# Do not cache dynamically generated pages.
ExpiresByType text/html A1
# Various rewrite rules.
RewriteEngine on
# If your site can be accessed both with and without the 'www.' prefix, you
# can use one of the following settings to redirect users to your preferred
# URL, either WITH or WITHOUT the 'www.' prefix. Choose ONLY one option:
#
# To redirect all users to access the site WITH the 'www.' prefix,
# (http://example.com/... will be redirected to http://www.example.com/...)
# adapt and uncomment the following:
# RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
# RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
#
# To redirect all users to access the site WITHOUT the 'www.' prefix,
# (http://www.example.com/... will be redirected to http://example.com/...)
# uncomment and adapt the following:
# RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
# RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]
# Modify the RewriteBase if you are using Drupal in a subdirectory or in a
# VirtualDocumentRoot and the rewrite rules are not working properly.
# For example if your site is at http://example.com/drupal uncomment and
# modify the following line:
# RewriteBase /drupal
#
# If your site is running in a VirtualDocumentRoot at http://example.com/,
# uncomment the following line:
# RewriteBase /
# Rewrite URLs of the form 'x' to the form 'index.php?q=x'.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
# $Id: .htaccess,v 1.90.2.3 2008/12/10 20:04:08 goba Exp $
Wenn die Seiten zum Download
am 11.10.2009 - 14:35 Uhr
Wenn die Seiten zum Download angeboten werden anstatt angezeigt zu werden kann der Server mit der Dateiextension .php nichts anfangen bzw. wertet Dateien dieser Art falsch.
Wie ist PHP im Apache intergriert? Als Modul? Ist das Apachemodul PHP5 aktiviert?
------------------------
Quiptime Group
Das habe ich mal getestet.
am 11.10.2009 - 15:28 Uhr
Ich habe eine kleine .php Datei auf den Server kopiert. Es stellte sich heraus, das der Server grundsätzlich PHP versteht (im Server-Stammverzeichnis und einem neu angelegten Unterverzeichnis funktioniert die Datei nämlich normal), aber wenn ich diese PHP-Datei in das Drupal-Verzeichnis kopiere, dann will er sie wieder downloaden.
Offenbar versteht der Server PHP nur im Drupalverzeichnis nicht. Dabei habe ich XAMPP standardmäßig installiert und erst danach das Drupalverzeichnis eingefügt.
Habe noch einen Test gemacht: Drupalverzeichnis umbenannt, neues leeres Verzeichnis mit Namen Drupal angelegt, .php-Datei hineinkopiert: läuft.
Danach die restlichen Drupal-Dateien in diees Verzeichnis kopiert und direkt diese .php-Datei gestartet: läuft. Danach habe ich nur das Verzeichnis aufgerufen was ja Drupal startet, und das Problem war wieder da. Seitdem läßt sich auch die dort befindliche .php-Datei nicht mehr starten.
Offenbar schaltet Drupal bei Start den PHP-Dienst für dieses Verzeichnis ab. Aber wo? Ich bin als Laie da überfordert.
Ganz offensichtlich gibt es
am 11.10.2009 - 16:08 Uhr
Ganz offensichtlich gibt es einen Unterschied zwischen den Apache-Konfigurationen 1.7.2.und 1.7.1.
Der hauptsaechliche Unterschied bei Deinen Tests mit der kleinen PHP Datei in verschiedenen Verzeichnisssen ist der, das sich im Verzeichnis der Dupalinstallation eine .htaccess befindet.
Du kannst ja testhalber mal die .htaccess umbenennen. Wird dann die Testdatei normal ausgefuehrt?
Wenn PHP im Drupalverzeichnis ohne die .htaccess funktioniert bedeutet dies nicht das die Fehlerursache in dieser Datei zu suchen ist. Denn die wurde ja so auch in 1.7.2 verwendet. Also komme ich wieder zur Frage: Was ist der Unterschied der Apache-Konfigurationen 1.7.2.und 1.7.1?
------------------------
Quiptime Group
Danke für die Antwort.
am 11.10.2009 - 17:11 Uhr
ohne .htaccess funktioniert die .php-Datei wieder. Stelle ich .htaccess wieder her laufen drupal und .php wieder nicht.
Also, PHP ist wohl als Modul installiert. phpinfo() sagt: Loaded modules: mod_php5.
Ich habe XAMPP 1.7.2 und 1.7.1 standardmäßig in Standardverzeichnisse installiert. Zum Unterschied der Versionen kann ich nicht viel sagen. Nur, dass statt der Version PHP 5.3 nun PHP 5.28 verwendet wird.
Vielleicht sollte ich wieder zurück zur Version 1.7.2 wechseln. Ich dachte, die in Drupal verwendeten PHP-Befehle würden besser mit PHP 2.8 zusammen arbeiten.
Du musst da wohl irgendwas
am 11.10.2009 - 17:28 Uhr
Du musst da wohl irgendwas anderes falsch gemacht haben.
----------------------------------------
http://tobiasbaehr.de/
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen
Das Verhältnis anderen zu helfen muss höher sein, als von anderen Hilfe zu erfragen/erwarten.
Apache Konfiguration
am 11.10.2009 - 20:37 Uhr
Laeuft die Drupalinstallation im Apache als virtueller Server?
Soll heissen ist die Drupal root zugleich eine eigene Serverinstanz des Apache?
Beispiel einer Apachekonfig fuer einen virtuellen Server:
<VirtualHost 192.168.1.11:80>DocumentRoot /var/www/demo.quiptime.lan
ServerName demo.quiptime.lan
<Directory "/var/www/demo.quiptime.lan">
allow from all
Options +Indexes
</Directory>
</VirtualHost>
In diesem Beispiel ist das Verzeichnis demo.quiptime.lan Drupal root.
Wenn ja ist vermutlich der virtuelle Server nicht hinreichend konfiguriert so das PHP nicht ausgefuehrt wird oder andersherum, Apache ist nicht hinreichend konfiguriert so das PHP in virtuellen Servern nicht ausgefuehrt wird.
------------------------
Quiptime Group
Nein, er hat wohl keine
am 12.10.2009 - 07:42 Uhr
Nein, er hat wohl keine eigene Serverinstanz. Jedenfalls habe ich diese Einträge in der Konfigurationsdatei nicht gesehen.