Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP funktioniert nicht auf neuem DocumentRoot (gelöst)

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PHP funktioniert nicht auf neuem DocumentRoot (gelöst)

    Hi,

    Bevor ich genau erkläre, wie ich das System installiert habe, hier in Kürze die Situation:

    Ich habe LAMP auf UBUNTU 16.04 installiert, und php5.6, php7.0, php7.1 neben einander

    Auf dem Default DocumentRoot (/var/www/html/) läuft alles prächtig.
    Ich habe jedoch mein eigenes Verzeichnis eingerichtet: /home/me/public_html
    Apache läuft, aber nicht PHP. Wenn ich ein php script aufrufe, wird der Code nicht exekutiert und als normalen Text ausgegeben..

    Nun zu den Details:
    - Apache installiert mit apt-get install apache2
    - Mysql installiert mit apt-get install mysql-server

    - php5.6, php7.0, php7.1 installiert nach den Anweisungen von:

    https://www.tecmint.com/install-diff...ons-in-ubuntu/

    Ziemlich cool soweit, und wie gesagt, es klappt.

    Wenn ich auf das originale Verzeichnis (/var/www/html/) gehe und ein php Dokument mit phpinfo(); anlege, kann ich die jeweiligen Versionen sehen.

    Um von einer php Version in die nächste zu wechseln, mache ich einfach folgendes:
    Code:
    $ sudo a2dismod php5.6
    $ sudo a2enmod php7.0
    $ sudo systemctl restart apache2
    Jetzt habe ich das neue Verzeichnis erstellt und die Rechte vergeben:
    Code:
    mkdir /home/me/public_html
    sudo adduser me www-data
    sudo chown -R www-data:www-data /home/me/public_html
    sudo chmod -R g+rwX /home/me/public_html
    In Apache, habe ich folgendes gemacht:
    Code:
    sudo vi /etc/apache2/sites-available/000-default.conf
    Dann die entsprechende Stelle mit dem neuen Verzeichnis versehen:
    Code:
    DocumentRoot /home/me/public_html
    Und weiter:
    Code:
    sudo vi /etc/apache2/apache2.conf
    und dies verändert:
    Code:
    <Directory /home/me/public_html>
            Options Indexes FollowSymLinks
            AllowOverride None
            Require all granted
    </Directory>
    Wie gesagt, apache funktioniert, aber wenn ich eine PHP-Datei aufrufe, sehe ich den code als plain text.

    Ich bin jetzt mit meinem Latein am Ende..

    Hätte irgend jemand eine Idee?
    Funktionieren tut es ja eigentlich, nur nicht unter /home/me/public_html ....

    Danke für Antworten und Hilfe

    Admino

  • #2
    DocumentRoot /home/me/public_html
    ...
    <Directory /home/jerome/public_html>
    Absichtlich abweichend?

    Und:

    wenn ich eine PHP-Datei aufrufe, sehe ich den code als plain text.
    Du rufst diese aber schon via http://localhost auf?
    The string "()()" is not palindrom but the String "())(" is.

    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar


    • #3
      ... nein, sorry, "me" sollte der Pseudonym sein.. (habe ich korrigiert)

      Danke!

      Kommentar


      • #4
        Ja, die tests führe ich dann im Browser mit http://localhost/.. durch

        Kommentar


        • #5
          Hier noch kleine Hinweise:

          Aufruf im Browser erfolgt z.B. mit:
          http://localhost/phpinfo.php

          Wenn ich den Apache server neu starte gibt es keine Fehlermeldung :
          tail -f /var/log/apache2/error.log

          Code:
          Tue Nov 14 16:35:18.047991 2017] [mpm_prefork:notice] [pid 25685] AH00169: caught SIGTERM, shutting down
          [Tue Nov 14 16:35:19.133688 2017] [mpm_prefork:notice] [pid 25768] AH00163: Apache/2.4.18 (Ubuntu) configured -- resuming normal operations
          [Tue Nov 14 16:35:19.133731 2017] [core:notice] [pid 25768] AH00094: Command line: '/usr/sbin/apache2'
          /etc/apache2/mods-enabled/ scheint auch ok zu sein (siehe screenshot, wenn php7.1 aktiviert wurde)
          Screenshot-mods-enabled.png


          Kommentar


          • #6
            Und dies ist die Antwort:

            Angenommen, PHP7.1 ist aktiviert, einfach die folgende Datei öffnen:
            /etc/apache2/mods-enabled/php7.1.conf

            Und php_admin_flag auf 'On' setzen. Das war's!

            Jeweil ändern für php5.6 oder php7.0

            Problem gelöst!!

            Kommentar

            Lädt...
            X