dokuwiki install.php startet mit Fehlermeldung

R

ralli

Guest
Ich habe apache24 installiert und in /etc/rc.conf mit apache24_enable="YES" aktiviert. Anschließend habe ich dokuwiki installiert.

Habe nun den installer gefunden und aufgerufen mit:

http://localhost/usr/local/www/dokuwiki/install.php

weil ich dokuwiki konfigurieren möchte.

Es kommt die Fehlermeldung:

Not Found

The requested URL /usr/local/www/dokuwiki/install.php was not found on this server.

Keine Rechte?
 
Du musst php installieren und es Apache beibringen. Bin gerade unterwegs und kann dir nix raussuchen aber gibts viele Anleitungen im Netz zu.
 
Du musst php installieren und es Apache beibringen. Bin gerade unterwegs und kann dir nix raussuchen aber gibts viele Anleitungen im Netz zu.
Also php wird doch mit dokuwiki mitinstalliert. Wahrscheinlich muß es noch konfiguriert werden. Hmm, dann muß ich mal Tante Google befragen...
 
Habe mod_php56 installiert und in die /usr/local/etc/apache24/httpd.conf ans Ende der Konfigurationsdatei eingetragen:

LoadModule php5_module libexec/apache24/libphp5.so

eingetragen und überprüft mit: apachectl graceful

Angezeigt wird:

Performing sanity check on apache24 configuration:

Syntax OK

Morgen seh ich weiter, jetzt ist erst Mal Feierabend.

Schönen Abend. :)
 
Überprüfen kannst du mit

apachectl -t

Dir die geladenen Module anzeigen

apachectl -t -D DUMP_MODULES

Ferner kannst du sofern du unter Apache mod_php nutzen möchtest eine Datei /usr/local/etc/apache24/Includes/php.conf anlegen mit folgendem Inhalt

Code:
<IfModule dir_module>
  DirectoryIndex index.php index.html
</IfModule>
<FilesMatch "\.php$">
  SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
  SetHandler application/x-httpd-php-source
</FilesMatch>
<IfModule php7_module>
  <FilesMatch "\.(php|phps|php7|phtml)$">
  SetHandler php7-script
  </FilesMatch>
  DirectoryIndex index.php
</IfModule>

Bei PHP 7 da Du vermutlich PHP 5 nutzt wäre aus php7 ein php5 zu machen sinnvoller
ach ja

cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

date.timezone = "Europe/Berlin" darin ist zu Empfehlen

Für die ersten Spiele kannst du dir einen Vhost anlegen

hier ein unverfängliches Beispiel
Code:
<VirtualHost *:80>
  DocumentRoot "/data/www/poudriere"
  ServerName packages.webterrorist.local

  <Directory /data/www/poudriere>
  Options +FollowSymlinks +Indexes
  AllowOverride None
  Require all granted
  </Directory>
</VirtualHost>

darin kannst eine phpinfo.php Datei ablgen mit folgendem Inhalt

Code:
<?PHP
phpinfo ();?>
 
Danke @minimike, das hat mir sehr geholfen. Nur hier weiß ich nicht genau:

<VirtualHost *:80>
DocumentRoot "/data/www/poudriere"
ServerName packages.webterrorist.local

<Directory /data/www/poudriere>
Options +FollowSymlinks +Indexes
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

In welche Datei kommt das? In die php.ini? Und wenn ist das für mein Vorhaben zwingend erforderlich?
 
Ich habs begriffen ..... VirtualHost werden in der httpd.conf angelegt und konfiguriert.
 
Alles richtig gemacht, aber trotzdem folgende Meldung:
Code:
Forbidden

You don't have permission to access /poudriere/phpinfo.php on this server.

Hab wohl keine Berechtigung? Bitte noch einmal um Hilfe.
 
Das ist wohl ein Copy/Paste-Fehler. @minimike hat die exemplarisch seine config für sein poudriere gegeben (das natürlich an einem anderen Ort liegt als dein dokuwiki). Du musst also seine configuration adaptieren.

Such dir ein Howto im Netz, da gibt es viele die auch erklären was da gemacht wird. Dann verstehst du z.B. dass die Documentroot dahin zeigen muss wo deine Dokumente (also deine Dokuwikiinstallation) liegen, und dass der Apache wissen muss, welche Dateien er anbieten darf (auch index.php), und dass er wissen muss was er damit tun muss, damit da aus Programmcode eine HTML-Seite wird (also an einen Interpreter reichen).
ich hatte es damals so aufgeschrieben
http://denkrobat.de/doku.php?id=php5_installieren
aber das war eigentlich noch nicht fertig :D
 
Alles auf null. Ich werde noch mal von vorne anfangen. Aber zunächst Mal brauche ich ein paar Fragen beantwortet:

Stimmt diese Installationsanweisung noch? https://www.dokuwiki.org/install:freebsd

Wenn ich Binärpakete installiere, welche brauche ich für meine Vorhaben?

Sind folgende richtig?

apache24

php56

Beinhaltet das Paket php56 auch das benötigte Modul php56_mod oder reicht die Installation von php56_mod?

Muß ich diese Konfiguration von apache auch noch berücksichtigen oder ist das veraltet?

https://www.dokuwiki.org/install:apache

Muß ich als User ralph in der Gruppe www sein?

Ist php56_mod überhaupt erforderlich und wenn, warum wird es von Paket dokuwiki nicht gleich mitinstalliert, denn dokuwiki installiert ja auch andere benötige php Module?

Ich würde mich freuen, wenn mir das ein kompetentes Communitymitglied beantworten könnte, bevor ich weitere Eigeninitiative entwickel und mich weiter einarbeite. Sonst hat alles keinen Sinn.

Danach werde ich mich mit der Anbindung und Konfiguration von php beschäftigen.
 
Also, du brauchst:
  • www/apache24 als Webserver.
  • lang/php56 für PHP.
  • www/mod_php56 für das PHP 5.6 Modul für Apache.
  • Eine /usr/local/etc/php.ini, dafür kann man erstmal einfach /usr/local/etc/php.ini-production umkopieren.
Dann würde ich Apache erst einmal so weit konfigurieren, dass er ein simples 'index.php' korrekt ausführt. Z.B.:
Code:
# index.php
<?php
phpinfo();
?>

Danach hast du einen Webserver mit PHP-Unterstützung. Nun installierst du die von Dokuwiki benötigten PHP-Module und startet apache24 einmal neu:
  • graphics/php56-gd
  • converters/php56-mbstring
  • security/php56-openssl
  • www/php56-session
  • textproc/php56-xml
  • archivers/php56-zlib
Zuletzt entpackst du das Dokuwiki-Archiv in dein Webroot (sodass doku.php auf der obesten Ebene ist) und machst auf das ganze Verzeichnis ein 'chown -R www:www ...' um dem Webserver die Rechte zu geben. Dann install.php im Browser öffnen und den Anweisungen folgen.

Das ist ein einfaches Setup, für schöne URLs und so weiter braucht man noch etwas mehr.
 
Danke @Yamagi, du warst ein paar Minuten schneller. Ich habe von vorn angefangen und bin strikt nach unserem Handbuch vorgegangen. Bis auf die zusätzlich zu vom Dokuwiki benötigten und zu installierenden PHP Module war ich auf einen richtigen Weg und habe alles richtig gemacht. Es deckt sich mit Deiner Anleitung:

Installation und Konfiguration von Apache 2.4

pkg install apache24

In die /etc/rc.conf eintragen:

apache24_enable="YES"

Apache neu starten: service apache24 start

Installation und Konfiguration von PHP 5.6

pkg install mod_php56

Nun editieren wir /usr/local/etc/apache24/httpd.conf.

Der PHP-Dateihandler muss hinzugefügt werden und der DirectoryIndex sollte index.php enthalten.

Finde den folgenden Abschnitt in httpd.conf:

<IfModule dir_module>
DirectoryIndex index.html
</IfModule>

Wenn Apache zuerst index.php bereitstellen soll, wie folgt ändern:

<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>

Wir fügen Sie am Ende von httpd.conf die folgenden Zeilen hinzu und speichern und verlassen Sie die Datei:

<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>

Wir starten Apache neu:

service apache24 restart

Wir testen, ob PHP korrekt funktioniert, indem wir eine PHP-Datei in / usr/local/www/apache24/data/ erstellen. Wir erstellen dort eine Datei namens "index.php" und fügen den folgenden Code ein:

<?php

echo "Hallo Ralli, hallo Welt!";

phpinfo ();

?>


Möglicherweise muß Apache ein letztes Mal neu gestartet werden, um zu prüfen, ob PHP funktioniert.

service apache24 restart

Starte die Adresse http://localhost im Browser neu und es sollte "Hallo Welt!" anstelle des Standards "It works!" als Apache-Nachricht erscheinen. Zusätzliche PHP Informationen werden mitangezeigt.

Mir ist es wichtig, das auch Schritt für Schritt zu verstehen und nicht einfach nur mit Copy und Paste zu arbeiten:

Den Rest werde ich nun erledigen. Danke für Deine Unterstützung.:)

apache.png
 
Nun installierst du die von Dokuwiki benötigten PHP-Module und startet apache24 einmal neu:
  • graphics/php56-gd
  • converters/php56-mbstring
  • security/php56-openssl
  • www/php56-session
  • textproc/php56-xml
  • archivers/php56-zlib
Ich habe dokuwiki als fertiges Paket installiert. Da werden die benötigten PHP Module gleich mitinstalliert. Es liegt nun unter /usr/local/www/dokuwiki.
 
Hallo @Yamagi,

leider kann ich immer noch nicht installieren. Irgendwas ist noch verkehrt. Das fertige Paket hat hierhin installiert:

www.png


Und in meiner httpd.conf steht folgendes:

Code:
DocumentRoot "/usr/local/www/apache24/data"

<Directory "/usr/local/www/apache24/data">

Was mache ich noch verkehrt?

Danke!
 
Dein DocumentRoot zeigt wo anders hin als dein Wiki liegt. Mach aus dem /usr/local/www/apache24/data mal ein /usr/local/www/dokuwiki.

Dann sollte es gehen.
 
Hi Ralli, DokuWiki kenne ich nicht, aber schauen wir mal:
pkg install mod_php56

Nun editieren wir /usr/local/etc/apache24/httpd.conf.
Da würde ich nichts machen.
Durch "pkg install mod_php56" wurde ja schon diese Zeile in die "httpd.conf" eingetragen:
Code:
LoadModule php5_module  libexec/apache24/libphp5.so

Jetzt erstellst du die Datei "/usr/local/etc/apache24/Includes/001_mod_php.conf" und da schreibst du rein:
Code:
<IfModule dir_module>
  DirectoryIndex index.php index.html
</IfModule>

<FilesMatch "\.php$">
  SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
  SetHandler application/x-httpd-php-source
</FilesMatch>


Nach "https://www.dokuwiki.org/install:apache" erstellst du jetzt noch die Datei "/usr/local/etc/apache24/Includes/002_dokuwiki.conf":
Code:
AliasMatch ^/dokuwiki/sites/[^/]+$  /usr/local/www/dokuwiki/
AliasMatch ^/dokuwiki/sites/[^/]+/(.*)$ /usr/local/www/dokuwiki/$1
Alias  /dokuwiki  /usr/local/www/dokuwiki/

<Directory /usr/local/www/dokuwiki/>
   Options +FollowSymLinks
   AllowOverride All
   Require local

   <IfModule mod_rewrite.c>
     # Uncomment to implement server-side URL rewriting
     # (cf. <http://www.dokuwiki.org/config:userewrite>).
      # Do *not* mix that with multisite!
     #RewriteEngine on
     #RewriteBase /dokuwiki
     #RewriteRule ^lib  - [L]
     #RewriteRule ^doku.php  - [L]
     #RewriteRule ^feed.php  - [L]
     #RewriteRule ^install.php  - [L]  
     #RewriteRule ^_media/(.*)  lib/exe/fetch.php?media=$1  [QSA,L]
     #RewriteRule ^_detail/(.*)  lib/exe/detail.php?media=$1 [QSA,L]
     #RewriteRule ^_export/([^/]+)/(.*)  doku.php?do=export_$1&id=$2 [QSA,L]
     #RewriteRule ^$  doku.php  [L]
     #RewriteRule (.*)  doku.php?id=$1  [QSA,L]
   </IfModule>
</Directory>

<Directory /usr/local/www/dokuwiki/bin>
   Require all denied
</Directory>

<Directory /usr/local/www/dokuwik/data>
   Require all denied
</Directory>


Jetzt noch schauen das der Owner von "/usr/local/www/dokuwiki//data" und "/usr/local/www/dokuwiki//conf" der User "www" ist. bzw. das der dort Schreibrechte hat.

Eine /usr/local/etc/php.ini, dafür kann man erstmal einfach /usr/local/etc/php.ini-production umkopieren.
in der "/usr/local/etc/php.ini" solltest du noch schauen das dieser Eintrag aktiviert ist:
Code:
date.timezone = Europe/Berlin

Jetzt noch Apache neu starten und schauen ob "http://localhost/dokuwiki/install.php" geht.
 
Dein DocumentRoot zeigt wo anders hin als dein Wiki liegt. Mach aus dem /usr/local/www/apache24/data mal ein /usr/local/www/dokuwiki.

Dann sollte es gehen.
Danke, hab wohl keine Schreibrechte ...

Heißt das chown -R www:www ..... ???

Muß ich mir heut Nachmittag noch mal anschauen.
 
Hallo @Wiedmann, sehr schön, danke, werde das heute Nachmittag noch durcharbeiten.:) Danach melde ich mich wieder.
 
Ja mit
Code:
chown -R www:www /usr/local/www/dokuwiki
änderst du den Benutzer und die Gruppe des Verzeichnisses rekursiv zu www als Benutzer und www als Gruppe.
Der Webserver läuft mit den Benutzerrechten www, daher ist das notwendig damit Apache an die Dateien darf.
 
So mein Ziel ist erreicht. Ich wollte mich aus der Abhängigkeit von LaTeX und Qt lösen. Wer Interesse an meiner selbst zusammengestellten Installationsanleitung hat, ich hänge sie hier an.

Sie wurde nur möglich mit freundlicher Unterstützung von @Yamagi, @Rakor, @minimike und @Wiedmann. Nochmals Danke dafür! :)
 

Anhänge

  • install.txt
    4,5 KB · Aufrufe: 300
Hi,

aus der install.txt:
ralli schrieb:
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
dies ist obsolet, du willst dir den Quelltext der Skripte niemals im Browser ansehen.
Desweiteren hast du die Konfiguration für PHP nun zweimal, in der etc/apache24/httpd.conf und in der
etc/apache24/Includes/001_mod_php.conf. Ich würde dies in der letzteren Datei bündeln.

ralli schrieb:
Wir ändern in httpd.conf:
DocumentRoot "/usr/local/www/apache24/data"
in
DocumentRoot "/usr/local/www/dokuwiki"

dies ist überflüssig, da du Dokuwiki über einen Alias ansprichst (/dokuwiki).

ralli schrieb:
chown -R www:www /usr/local/www/dokuwiki
chown -R www:www /usr/local/www/dokuwiki//data
chown -R www:www /usr/local/www/dokuwiki//conf

Die beiden letzten chown-Anweisungen sind überflüssig.

Rob
 
Hallo @KobRheTilla, gerne bin ich bereit hinzuzulernen. Was Du wahrscheinlich zu Recht kritisierst, sind alles Empfehlungen von unseren verschiedenen Communitymitgliedern, die ich mangels eigener Erfahrung so übernommen habe. Sollte ich das DokuWiki nochmals installieren, werde ich Deine Beanstandungen berücksichtigen. Nun aber, es läuft und funktioniert, und das ist die Hauptsache, oder?:)

Gut ich sehe gerade, das es der beiden letzten chown Anweisungen tatsächlich nicht gebraucht hätte, weil die erste ja schon rekursiv wirksam ist. Das werd ich mal in der Installationsanleitung ändern. Und das andere auch, aber vertiefen will ich das jetzt nicht, denn es läuft, und die beanstandeten Fehler sind keine kritischen Fehler, die Auswirkungen haben, sondern eh formale Fehler. Und ich werd den Teufel tun und neu installieren. httpd.conf werde ich gleich mal nach Deiner Empfehlung testen und das dann auch das erste löschen und schauen, ob es noch läuft.
 
Zurück
Oben