Frische Drupal-Installation erfolgreich, aber alle Links Error 404 (mod_rewrite vorhanden)
am 16.12.2015 - 19:43 Uhr in
Hallo, zusammen!
Auf meinem frisch eingerichteten virtuellen Host habe ich gerade Drupal 8.0.1 installiert. Nach anfänglichem Kampf mit der Datenbank (der Name "drupalwheel" produzierte Fehler und im Browser kam nichts mehr, mit "drup8" geht dies jetzt offenbar), klappte die Installation dann doch noch, augenscheinlich ohne Fehler. Aber: Egal, welchen Link ich anklicke, es erscheint immer nur der Fehler 404. Laut phpinfo() ist das Modul "mod_rewrite" in den "Loaded Modules", also offenbar geladen.
Wenn ich z.B. statt "http://donatra/user" (->Error 404) ins Adressfeld alternativ "http://donatra/index.php?q=user" ("donatra" ist der lokale Name meines Rechners) eingebe, lande ich wieder nur auf der Startseite. Auch wenn dort statt "user" "unsinn" Eingebe (also einen sicherlich falschen Link), erscheint immer nur die Startseite.
Ich bin leider noch nicht allzu fit in Sachen Apache2. Ich benutze openSUSE 13.2 (32bit), und die Konfiguration des virtuellen Servers, die das Konfigurationswerkzeug "YaST" erstellt, funktioniert erst gar nicht. Hier die von mir selbst erstellte Konfiguration /etc/apache2/vhosts.d/donatra.conf:
<VirtualHost *>
ServerName donatra
DocumentRoot /home/mfroese/hosts/donatra
ErrorLog /var/log/apache2/donatra_log
ServerAdmin mfroese@donatra
<Directory "/home/mfroese/hosts/donatra">
Options +ExecCGI -Includes
Require all granted
</Directory>
ScriptAlias /cgi-bin/ /home/mfroese/hosts/donatra/cgi-bin/
<Directory "/home/mfroese/hosts/donatra/cgi-bin">
Options +ExecCGI -Includes
Require all granted
</Directory>
</VirtualHost>
Ich hatte ursprünglich versucht, vom Standard-Host "localhost" auf mein $HOME/public_html-Verzeichnis zuzugreifen. Das hat auch funktioniert, aber das mag offensichtlich Drupal nicht. Daher habe ich den Hinweis von den Hilfeseiten auf openSUSE befolgt und einen Virtuellen Host erstellt. Die Installation von Drupal 8.0.1 lief wie gesagt sauber durch. Aber jetzt geht nichts mehr.
Hat jemand irgendeine Idee?
Vielen Dank im Voraus für etwaige Antworten oder Tipps!
- Anmelden oder Registrieren um Kommentare zu schreiben
ist der VHost geladen?
am 16.12.2015 - 20:57 Uhr
wo steht die index.php von drupal?
Ist das das Hauptverzeichnis der domain?
Wenn das ein Unterverzeichnis ist, muss die config für den rewrite (.htaccess) geändert werden.
Grüße
Ronald
Sollte das Hauptverzeichnis des virtuellen Servers sein
am 17.12.2015 - 03:55 Uhr
Alle Daten stehen bei mir im Verzeichnis "/home/mfroese/hosts/donatra". In diesem Verzeichnis habe ich das Verzeichnis "cgi-bin" erstellt und im ersten Versuch eine statische HTML-Seite eingestellt. Die Seite erscheint wie erwartet. Dann habe ich die statische "index.html"-Seite wieder entfernt und an dieser Stelle drupal mit diesen Kommandos entpackt:
tar zxf ~/Downloads/drupal-8.0.1.tar.gz
mv drupal-8.0.1/.[^.]* .
mv drupal-8.0.1/* .
rmdir drupal-8.0.1
mkdir -p sites/default/files/translations
chmod a+w sites/default/files/translations
chmod a+w sites/default/files
cp -Rp sites/default/default.settings.php sites/default/settings.php
chmod a+w sites/default/settings.php
Der Aufruf von "http://donatra" in meinem Webbrowser startet dann die Drupal-Installation, die ohne Fehler durchläuft. Nach der ersten Warnung, ich solle für sites/default/settings.php und sites/default die Schreibrechte aus Sicherheitsgründen wieder entziehen, komme ich dem auch nach. Trotzdem erscheint in den letzten Schritten der Installation weiterhin diese Warnung. Ich weiß nicht, ob das jetzt hilft.
In dem eigentlichen Serververzeichnis /srv/www... des "Haupthosts" landen keine Installationsdateien, soweit ich das sehe.
Aber Moment, hilft vielleicht das hier weiter?
donatra:~ # httpd2 -S
AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/default-server.conf:103
VirtualHost configuration:
*:* donatra (/etc/apache2/vhosts.d/donatra.conf:1)
ServerRoot: "/srv/www"
Main DocumentRoot: "/srv/www/htdocs"
Main ErrorLog: "/var/log/apache2/error_log"
Mutex default: dir="/run/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex rewrite-map: using_defaults
PidFile: "/run/httpd.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
Define: MODPERL2
User: name="wwwrun" id=30
Group: name="www" id=8
Mich macht der Eintrag für ServerRoot hier stutzig. Aber das Kommando "httpd2 -S" habe ich von openSUSE-Seiten her, ich weiß nicht so recht, was dieser Befehl genau tut, und wie ich die Ausgabe interpretieren soll.
War das informativ?
Danke für den Hilfeversuch einstweilen...
Ich habe es noch einmal von vorn mit folgender Konfiguration (/etc/apache2/vhosts.d/donatra.conf) probiert:
<VirtualHost *>
DocumentRoot /home/mfroese/hosts/donatra
ServerName donatra
ServerAdmin root@donatra
<Directory /home/mfroese/hosts/donatra>
AllowOverride None
Require all granted
</Directory>
ScriptAlias /cgi-bin/ cgi-bin
<Directory cgi-bin>
AllowOverride None
Options +ExecCGI -Includes
Require all granted
</Directory>
</VirtualHost>
Das Ergebnis ist dasselbe. Installation läuft sauber durch, dann nur noch 404. Ein Studium der Apache2-Dokumentation hat mich auch nicht weitergebracht.