liebewinter: Was brauche um ein Webserver bauen

Hallo , erste entschuldigung von meinem deutsch...

ich bin ganz neu mit diesem Sachen... , ich bin fast Fertig mit mein Website (es fehlt mir mehr lerne über PHP..) , jetzt möchte lerne wie man mit Webserve arbeiten .An den Meisterinnen/Meister... was brauche ich um meine Webserver Verwalter ? , Bei Spiel , mit MariaDB , Apache2 , phpmyadmin und PHP erreicht für einen einfacher Website ? es Besser habe ein programm , Alles in ein .. wie Bei Spiel Xampp , oder ist Besser Installiert jeden alleine ?

Viele Danke für deinen Ratschlag !

akzeptierte Antworten

  1. hallo,

    wenn Du was lernen willst musst Du alles selber machen. Denn nur beim Selbermachen kann man ein Handwerk lernen. Außerdem lernst Du die Zusammenhänge besser zu verstehen.

    Selbermachen heißt: Die Komponenten selbst installieren und konfigurieren. Und da lernst Du auch was dazugehört.

    MfG

    1. Danke für deinen Antwort ! , auf einen Virtualbox mit Ubuntu-16.04 ich habe so Installiert , für PHP ;

      Add Repository:

       sudo apt-add-repository ppa:ondrej/php
       sudo apt-get update
       sudo apt-get install php7.2
      

      dann habe geprüft ob alles benotige PHP installiert habe , habe gebaut ein php.info ;

      
      <?php
      phpinfo();
      ?>
      
      

      dann prüft ob alles gut funzioniert , mit

      http://localhost/phpinfo.php

      dann

      sudo apt-get update && apt-get upgrade

      MariaDB Installiert

      sudo apt-get install mariadb-server mariadb-client

      Apache2 Installiert ,

      sudo apt-get install apache2

      phpmyadmin

      sudo apt install phpmyadmin

      dann start Apache2

      sudo systemctl restart apache2.service

      .... und das ist alles was ich brauche ??

      1. Moin,

        Danke für deinen Antwort ! , auf einen Virtualbox mit Ubuntu-16.04 ich habe so Installiert , für PHP ;

        Linux ist schon einmal gut, da übernimmt die Paketverwaltung einiges an Arbeit.

        Eine Frage: Das folgende ist meines Wissens nicht nötig, da PHP bereits in den Ubuntu-Repositories enthalten ist.

        Add Repository:

         sudo apt-add-repository ppa:ondrej/php
         sudo apt-get update
         sudo apt-get install php7.2
        

        Woher ist daher die Info, dass man PHP manuell hinzufügen müsste?

        dann habe geprüft ob alles benotige PHP installiert habe , habe gebaut ein php.info ;

        
        <?php
        phpinfo();
        ?>
        
        

        Kleiner Tipp: Das schließende ?> brauchst du nicht, wenn die Datei mit PHP-Code endet.

        dann prüft ob alles gut funzioniert , mit

        http://localhost/phpinfo.php

        Dazu muss dein Skript natürlich als phpinfo.php gespeichert werden (oben steht php.info). Und: Der Apache muss an dieser Stelle bereits installiert sein!

        dann

        sudo apt-get update && apt-get upgrade

        MariaDB Installiert

        sudo apt-get install mariadb-server mariadb-client

        Apache2 Installiert ,

        sudo apt-get install apache2

        phpmyadmin

        sudo apt install phpmyadmin

        dann start Apache2

        sudo systemctl restart apache2.service

        .... und das ist alles was ich brauche ??

        Ich müsste zu Hause noch mal nachschauen, ob die Paketverwaltung im Apache PHP mit einträgt oder ob man das manuell machen muss.

        Viele Grüße
        Robert

        1. Eine Frage: Das folgende ist meines Wissens nicht nötig, da PHP bereits in den Ubuntu-Repositories enthalten ist.

          ich habe mehrere mal nur mit

          sudo apt-get install php

          aber das Fenster von phpinfo.php , ist nicht gezeigt.. , ich habe Ein Bissen recherchiert um beim Debian abstammen (Debian , Ubuntu , Linux Mint,...) , ist benöting das Paket libapache2-mod-php7.2 , der Nummerer hängt mit dem PHP Version die ich Installier habe ....und das Fenster phpinfo.php , ist gezeigt ☺️ .So , wie du sagst , brauche ich nicht Anhagt neue Repositories....

          Woher ist daher die Info, dass man PHP manuell hinzufügen müsste?

          auf keine... ich mache das um zu wissen ob alle php Paketen installiert habe ... ich kann auch so schreibe..

          sudo gedit /var/www/html/phpinfo.php

          und dann das Code...

          Dazu muss dein Skript natürlich als phpinfo.php gespeichert werden (oben steht php.info).

          es war einen fehler... ich normalerweise schreibe wie du sagst...

          .... und danke von deinen Ratvorschlag !

        2. Add Repository:

           sudo apt-add-repository ppa:ondrej/php
           sudo apt-get update
           sudo apt-get install php7.2
          

          Woher ist daher die Info, dass man PHP manuell hinzufügen müsste?

          Das kann ich Dir sagen: Vom Ubuntu selbst. Ubuntu 16.04 bringt sonst "nur" PHP 7.0 mit.

          @liebewinter:

          dann prüft ob alles gut funzioniert , mit

          http://localhost/phpinfo.php

          Das geht nachdem auch der Apache installiert wurde und ggf PHP aktiviert wurde. Vorher geht:

          cd /var/www/html/
          php phpinfo.php
          

          Hast Du den erst PHP und dann den Apache installiert dann funktioniert der Abruf von http://localhost/phpinfo.php vielleicht nicht. Wenn Du Abruf von http://localhost/phpinfo.php eine scheinbare leere Seite siehst, dann mache folgendes in einem Terminal:

          cd /etc/apache2/mods-enabled
          sudo su
          ln -s ../mods-available/php7.2.load ./
          ln -s ../mods-available/php7.2.conf ./
          systemctl restart apache
          

          Zu mariadb:

          Unter Ubuntu kann zunächst der root ohne Benutzername und Passwort eine Verbindung aufnehmen. Du musst also einen Benutzer anlegen:

          sudo su
          mysql
          

          Dann in der Mariadb-Shell:

          CREATE DATABASE test;
          GRANT ALL ON test/* TO test@localhost IDENTIFIED BY TestPassWort;
          

          Danach kann sich der Benutzer "test" vom localhost anmelden und die Datenbank test benutzen.

          1. Danke für deinen empfehlst !

            Das kann ich Dir sagen: Vom Ubuntu selbst. Ubuntu 16.04 bringt sonst "nur" PHP 7.0 mit.

            ja, ich weiss....

            Hast Du den erst PHP und dann den Apache installiert dann funktioniert der Abruf von http://localhost/phpinfo.php vielleicht nicht. Wenn Du Abruf von http://localhost/phpinfo.php eine scheinbare leere Seite siehst, dann mache folgendes in einem Terminal:

            ja , ich habe bemerke... , als ich der Ordner /var/www/html/ suche , habe ihn nicht gefunde , weil Apache2 nicht installiert habe ....

      2. Klasse, ist doch toll!

        Fang am Besten damit an, den Apache zu konfigurieren, Stichwort: Virtual Host. Und Namen auf die lokale IP Adresse 127.0.0.1 auflösen funktioniert über die Datei /etc/hosts da stehen schon die Beispiele drin.

        Viel Erfolg!

        1. ich habe auf dem Datei /etc/hosts nach gesucht , aber auf meinen Ubuntu-18.04 habe keine hosts Datei.... kannst du Bitte geben mehr information um apache2 zu konfiguriren ? ,mit http://localhost/server-status bekommt die Information von apache2...

          1. ich habe sie gefunde... meine probleme war , das ich dachte ein Ordner war , nicht eine Datei.......

  2. Moin,

    Hallo , erste entschuldigung von meinem deutsch...

    Kein Problem.
    Rein aus Neugier wegen der Formulierungen: Was ist denn deine Muttersprache?

    ich bin ganz neu mit diesem Sachen... , ich bin fast Fertig mit mein Website (es fehlt mir mehr lerne über PHP..) , jetzt möchte lerne wie man mit Webserve arbeiten .An den Meisterinnen/Meister... was brauche ich um meine Webserver Verwalter ?

    Ah, OK, die Überschrift war etwas verwirrend für mich, weil ich dachte, dass du einen Webserver selbst programmieren möchtest. Das wäre eine umfangreichere Sache. Da ist das Verwalten schon der bessere Ansatz.

    Bei Spiel , mit MariaDB , Apache2 , phpmyadmin und PHP erreicht für einen einfacher Website ? es Besser habe ein programm , Alles in ein .. wie Bei Spiel Xampp , oder ist Besser Installiert jeden alleine ?

    Auf welchem Betriebssystem soll das Ganze denn laufen?

    Viele Grüße
    Robert

    1. Danke für deinen Antwort !

      Rein aus Neugier wegen der Formulierungen: Was ist denn deine Muttersprache?

      ich bin aus den Baskenland aber auch spreche spanisch...

      die Überschrift war etwas verwirrend für mich, weil ich dachte, dass du einen Webserver selbst programmieren möchtest.

      nur um zu wissen , wie soll ich die Überschrift schreiben um Besser meine Frage zu verstehen ? ☺️

      Auf welchem Betriebssystem soll das Ganze denn laufen?

      Auf Linux...

      1. Hi,

        Danke für deinen Antwort !

        Immer gerne!

        Rein aus Neugier wegen der Formulierungen: Was ist denn deine Muttersprache?

        ich bin aus den Baskenland aber auch spreche spanisch...

        Ah, verstehe. Dann sollte ich mich mal mit beiden Sprachen beschäftigen. Es ist ja interessant, dass man die Grammatik einer Sprache dann auch in der anderen Sprache nachvollziehen kann. Wenn ich als Deutscher Spanisch oder Baskisch spräche, würdest du wahrscheinlich auch unterscheiden können 😉

        die Überschrift war etwas verwirrend für mich, weil ich dachte, dass du einen Webserver selbst programmieren möchtest.

        nur um zu wissen , wie soll ich die Überschrift schreiben um Besser meine Frage zu verstehen ? ☺️

        „Was brauche ich um einen Webserver zu betreiben“

        Viele Grüße
        Robert

        1. danke für deinen Ratvorschlag , aber das Probleme ist das Jetzt kann ich nicht die Überschrift wechsel....

          1. Also:

            Ubuntu 16.04 ist die alte Version von Ubuntu. Es wird sich herausstellen, dass das nicht ideal ist. Für das folgende brauche ich deutlich weniger als eine Stunde:

            Bereite Dein Windows wie folgt vor:

            Bereite die neue virtuelle Maschine wie folgt vor:

            sudo su
            echo -e "\nAddress: \\4" >> /etc/issue
            apt update
            apt full-upgrade
            apt install openssh-client openssh-server vim apache2 apache2-utils php php-cli phpmyadmin php-mysql mariadb-client mariadb-server vim mc 
            ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load
            reboot
            
            • Du installierst also die Software, ein paar dringend nötige Programme, SSH, PHP Apache und mysql. Außerdem schaltest Du mod_rewrite ein. Das wirst Du wohl dringend brauchen...

            • Ubuntu startet danach neu und zeigt (hoffentlich) seine aktuelle IP-Adresse an.

            Wenn NICHTS oder wenn "127.0.0.1" angezeigt wird finde diese IP-Adresse mit

            ip address show
            

            heraus. Das zeigt etwas an wie:

            2: enp5s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
                link/ether 14:da:e9:15:3d:1c brd ff:ff:ff:ff:ff:ff
                inet 192.168.1.3/24 brd 192.168.1.255 scope global enp5s0
            

            enp5s0 ist das Gerät 192.168.1.3 ist die IP-Adresse

            • Schreibe jetzt die Zeile mit dem Gerät neu:
            sudo echo 
            sudo echo "Address: \4{enp5s0}" >> /etc/issue
            reboot
            

            Jetzt sollte die korrekte IP angezeigt werden. Du musst Dich jetzt nicht anmelden. Merke Dir die IP-Adresse.

            • Nimm jetzt unter Windows Putty.

            Verbinde Dich mit Putty unter Angabe der IP-Adresse mit dem Server. Speichere diese Verbindung. Mit WinSCP kannst auf diese Verbindung zugreifen.

            • Starte Putty-Keygen. Erzeuge ein Schlüsselpaar. Kopiere den Öffentlichen Schlüssel (public key) mit WindScp nach /home/$USER/.ssh/authorized_keys

            • Ab sofort brauchst Du kein Passwort mehr eingeben.

            • Lasse Dir in Putty die IP anzeigen von der aus Du Dich mit Putty verbunden hast und verbinde Dich in Putty mit der Datenbank:

            lastlog | grep $USER
            # user           pts/2   192.168.1.2      Mi Aug 15 16:44:48 +0200 2018
            sudo su
            mysql
            
            • Wir benutzen jetzt '192.168.1.2' als gefundene IP.

            • Dann lege in der Mariadb-Shell den Mysql-Benutzer an:

            CREATE DATABASE test;
            GRANT ALL ON test.* TO test@localhost IDENTIFIED BY "[TestPassWort]";
            GRANT ALL ON test.* TO test@192.168.1.2 IDENTIFIED BY "[TestPassWort]";
            
            • Wenn Du die Datenbank mit phpmyadmin verwalten willst, brachst Du dafür Root-Rechte:
            GRANT ALL ON *.* to webroot@localhost  IDENTIFIED BY "[WebRootPassWort]" WITH GRANT OPTION;
            
            • Benutze dann den User "webroot" für die Anmeldung an phpmyadmin.

            • Es wird sich womöglich herausstellen, dass Du weitere Software und PHP-Module brauchst.

            1. Ubuntu 16.04 ist die alte Version von Ubuntu. Es wird sich herausstellen, dass das nicht ideal ist.

              so , ich will jetzt die neu Ubuntu version installiert..

              Nimm jetzt unter Windows Putty.

              aber ich bin auf einen Linux Rechner.....

              1. aber ich bin auf einen Linux Rechner…

                Sehr gut! Dann lass Putty weg und nimm ein Terminal, tippe:

                ssh [IP-Adresse]
                

                Das ist bequemer als im Fenster der virtuellen Maschine zu arbeiten.

                Ebenso brauchst Du WinSCP nicht.

                Den Key erzeugst Du auf Deinem Linux-Rechner mit

                cd 
                ssh-keygen
                

                und kopierst den dann mit

                scp .ssh/id_rsa.pub [USER]@[IP-ADRESSE]:/home/[USER]/.ssh/authorized_keys
                

                Außerdem kannst Du das Paket sshfs installieren und dann mit

                cd 
                mkdir mounts
                mkdir mounts/webserver
                sshfs [USER]@[IP-ADRESSE]://var/www/ ./mounts/webserver
                

                das Web-Verzeichnis mounten.

                1. Entschsuldigung aber ich habe nicht verstande wo

                  ssh [IP-Adresse]

                  schreibe soll , auf meine Rechner oder auf dem Virtualbox

                  1. Auf deinem richtigen Rechner.

                  2. ssh [IP-Adresse]

                    und die IP , von dem Rechner oder vom Virtualbox

                    1. vom Virtualbox

                      1. wenn schreibe auf dem Virtualbox

                        scp .ssh/id_rsa.pub [USER]@[IP-ADRESSE]:/home/[USER]/.ssh/authorized_keys

                        bekomme , das ich keine verbindung habe...…

                        ssh: connect to host 192.168.1xx.xxx port 22: Connection refused lost connection

                        ich habe versucht auf meine Rechner der Port 22 zu öffner mit

                        nc 192.168.1xx.xxx 22

                        aber ohne erfolgt....

                        ich habe in Virtualbox ,für Netzwerkbrücke eingeschlossen...

                        1. ich denke das probleme war das ich dass die Paragraphe die ich schreibe , kurze war, deshalb wurde sie nicht gemacht , jetz mit eine Lange habe geschafft es ! ☺️