Eigenen Webserver (apache2) betreiben

  • Hallo Zusammen, ich habe einen apache2 Webserver mit phpmyadmin / mysql usw.... ionstallation hat funktioniert....
    Die seite ist lokal unter IP/test erreichbar.

    Nun möchte ich aber die webseite auch von außen erreichbar machen...ich habe einen duckdns account udn ich habe noch einen Proxy reverse nginx installiert

    wenn ich im proxy Manger jetzt "meineDomain.org" eintrage mit weiterleitung an die IP bekomme ich einen Bad request....

    Bitte steinigt mich nicht gleich..sondern erklärt mir bitte in klaren schritten was ich machen muss..

    der Proxy Reverse nginx ist im Router mit Port 80 und 443 weitergeleitet....

    Über ne Erklärung vielen Dank

    Danke und Gruss

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Hi..danke für die Antwort..dachte mir das die Frage kommt..

    ich habe noch andere Anwendungen die Port 80 und 443 benötigen..deshalb der Proxy Reverse Nginx..

    ich such halt jemand der sich mit dem dahinterliegendem proxy manager auskennt und eventuell mein Problem gelöst hat…?

    hoffe du weisdt was ich meine..

    gruss

  • Code
    location / {
      proxy_pass http://192.168.x.x:8080/;
      proxy_buffering off;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-Host $host;
      proxy_set_header X-Forwarded-Port $server_port;
    }

    Wie gesagt, wenn dein Apache richtig konfiguriert ist, sollte der reverse Proxy kein Hexenwerk sein.

  • Da fängst halt schon..kommt der Code in die wp-config? Und an welcher Stelle?

    der apache funzt

    Dieser Code ist ein Beispiel für eine proxy_pass Direktive, die in einer location Anweisung innerhalb einer server Anweisung angegeben wird. Die location Anweisung definiert einen URI-Pfad, der an den proxied Server weitergeleitet wird. Die server Anweisung definiert einen virtuellen Server, der auf einem bestimmten Port lauscht. Um diesen Code zu verwenden, musst du ihn in einer Konfigurationsdatei von Nginx einfügen, die normalerweise in /etc/nginx oder /usr/local/nginx zu finden ist. du kannst entweder die Standardkonfigurationsdatei nginx.conf oder eine benutzerdefinierte Datei bearbeiten, die in der nginx.conf Datei mit der include Anweisung eingebunden ist. Zum Beispiel:

    Man läßt auf einen Port nur einen Server laufen und verwendet andere Ports für andere Server...

    Mit offenen Augen träumen

  • Dieser Code ist ein Beispiel für eine proxy_pass Direktive, die in einer location Anweisung innerhalb einer server Anweisung angegeben wird. Die location Anweisung definiert einen URI-Pfad, der an den proxied Server weitergeleitet wird. Die server Anweisung definiert einen virtuellen Server, der auf einem bestimmten Port lauscht.


    Aller Güte...wie soll das ein Hobbybasler der ab und an mal damit arbeitet, verstehen?? Aber trotzdem danke

    Um diesen Code zu verwenden, musst du ihn in einer Konfigurationsdatei von Nginx einfügen, die normalerweise in /etc/nginx oder /usr/local/nginx zu finden ist. du kannst entweder die Standardkonfigurationsdatei nginx.conf oder eine benutzerdefinierte


    Der Apache Server läuft bei mir unter einem eigenständigem LXC Container / Proxmox und unter Ubuntu 18.04
    der Reverse Proxy Nginx Manager auch unter einem seperatem LXC Container...habe jetzt mal im Ubuntu Container unter den Pfaden /etc/nginx oder /usr/local/nginx geschaut....da gibts aber kein Ordner mit Nginx :-( Hierfür habe ich doch den LXC Container...oder mache ich gerade einen Denkfehler......muss ich in den Ubuntu LXC wo auch der Apache2 drauf läuft noch Nginx installieren.....dann hätte ich doch aber Nginx doppelt???

    bei Server_name example.com da müsste dann meine Domain rein zb. "MeineDomain.duckdns.org"..richig?
    und welche IP müsste bei proxy_pass rein bei mir??

    Über ne Info herzlichen Dank. Kann immer erst gegen nachmittag antworten..aber danke schonmla für die Aufklärung

  • also..nochmal bissl rumgespielt...jetzt folgendes gemacht.....nginx auf meinem LXC container installiert wo auch das wordpress template von Turnkey installiert ist....

    wenn ich die IP eingebe dann kommt auch die webseite...udn wird korrekt angezeigt..

    In der nginx.conf habe ich dann das so eingefügt:

    wenn ich dann zb nach cache löschung des browsers http:// MeineDomain.duckdns.org eingebe kommt folgendes Bild und keine Webseite:

    Irgendwo wird nicht weitergeleitet.... :-(

    Bite Euch um Hilfestellung
    Danke udn Gruss

  • Um den Apache Webserver auf dem LXC Container von außen erreichbar zu machen, musst du eine Portweiterleitung oder eine Proxy-Regel einrichten.

    - Wenn du LXD verwendest, kannst du ein Proxy-Gerät hinzufügen, das Verbindungen auf Port 80 an den Container weiterleitet.
    Zum Beispiel:
    lxc config device add web-server http-forward proxy listen=tcp:0.0.0.0:80 connect=tcp:127.0.0.1:80
    https://www.linode.com/docs/guides/beginners-guide-to-lxd/


    - Wenn du iptables verwendest, kannst du eine NAT-Regel hinzufügen, die Verbindungen auf Port 80 an die IP-Adresse des Containers weiterleitet.
    Zum Beispiel:
    `iptables -t nat -A PREROUTING -p tcp -i enp0s3 --dport 80 -j DNAT --to-destination 10.0.0.10:80`⁵

    https://serverfault.com/questions/9396…o-lxc-container

    - Wenn du Apache auf dem Hostsystem installiert hast, kannst du einen Reverse-Proxy einrichten, der Anfragen an den Container weiterleitet. Zum Beispiel: `ProxyPass / http://10.0.0.10/`

    du musst auch sicherstellen, dass der Apache Webserver auf dem Container so konfiguriert ist, dass er Anfragen von externen Quellen akzeptiert. Dazu musst du möglicherweise die Datei `/etc/apache2/sites-available/000-default.conf` bearbeiten und die Direktive `Require all granted` hinzufügen.

    man kommt ja nicht freiwillig auf die Idee ein Nginx Proxy Manager zu installieren:
    wget -qO- https://raw.githubusercontent.com/ej52/proxmox-s…manager/install | bash
    ^- wer dir dies empfohlen hat, sollte dir dann die notwendigen Schritte erklären

    Wenn du Probleme hast, können dir die Logdateien des Nginx Proxy Manager unter /config/log/production.log helfen.

    Hier in diesem Forum geht es um WordPress und nicht um Smart Home Anwendungen.

    Mit offenen Augen träumen

  • Hi..wie schon geschrieben habe ich apache2 auf dem lxc installiert..
    Wieso kommt man(n) da nicht freiwillig drauf..? Glaubst du ich würde hier dann posten und fragen…..??

    wie schon oben geschrieben..intern gehts mit der Ip von extern geht nix..und ich habe ja noch geschrieben das ich einen weiteren lxc container habe mit anderer IP auf dem ein reverse proxy manager läuft..aber da funzt das nicht mit dem weiterleiten…andere inet anwendungen wie nextcloud gehen intern wie extern….mit dem wordpress halt nicht…

    und ..immer klasse wieviel hier drumrumgeschrieben wird..ich habe oben geschrieben das ich Anfänger bin…

  • So, nochmal zum Verständnis....,

    ich habe Proxmox am Laufen mit LCX Containern...einer der Container ist vorkoniguriert jetzt zb. Mit Ubuntu....darauf installiert Wordpress mit phpmyadmin mysql usw...heisst intern über dei IP ist Wordpress udn auch das backend erreichbar. Container IP 192.168.178.45

    Weiter habe ich einen Lxc Container mit Proxy Reverse Nginx Manager installiert...hier die IP 192.168.178.62

    Da ich ja den Proxy habe, habe ich in meiner UDM pro den Port 80 und Port 443 auf die IP 192.168.178.62 weitergeleitet.
    Warum? Weil ich noch andere Anwendungen habe wie zb. Nextcloud usw. Mit dem passt auch alles udn das ist auch von außen erreichbar.

    Jetzt kann ich ja nicht nochmla den Port 80 und 443 in der UDM pro weiterleiten..also muss ich das auch wieder über den Proxymanger Nginx mit der IP 192.168.178.62 machen...

    Frage 1 und bitte nur diese Frage beantworten! -> Stimmt das soweit ?

    Da ich jetzt aber noch einen Container mit Wordpress habe (IP 192.1689.178.45) und diesen von aussen erreichbar machen will, brauche ich einen Vhost (virtualhost) .....

    Da ich ja in der udm pro port 80 und 443 auf die IP 192.168.178.62 -> also den Proxy Nginx Manger weitergeleitet habe muss ich ja auch mit der IP 192.168.200.62 weiterarbeiten..

    Frage2 -> richtig?

    Hier habe ich aber keine Konfigurationsdatei unter /etc/nginx oder /usr/local/nginx......

    Frage3 -> Wo liegt hier die .config Datei die ich bearbeiten muss?
    Wie und welche Datei und wo muss ich denn bearbeiten?

    Bitte nicht so kompliziert udn eure fachm. Begriffe hier einbringen....vielleicht so das ich es und andere die es benötigen, verstehen.

    Vielen herzlichen Dank.

  • So schnell gebe ich nicht auf......

    habe jetzt einen neuen Container erstellt mit ner neuen IP 192.168.178.100. darauf habe ich ubuntu installiert.....dann habe ich den ngnix installiert standalone

    Code
    sudo apt install nginx nginx-extras

    dann bin ich in meine udm pro und habe den alten Proxy manager deaktiviwert udn dafür die IP 192.168.178.100 und hier port 80 und 443 weitergeleitet...

    nginx soll ja nicht alös webserver fungieren wondern als proxy..also schalten ich die Standardseite ab mit:

    Code
    sudo unlink /etc/nginx/sites-enabled/default

    dann bin ich in

    Code
    cd /etc/nginx/sites-available

    und da habe ich dann mit nano folgendes gemacht

    Code
    sudo nano reverse-proxy.conf

    und dann

    dann das hier gemacht also die Konfiguration gestartet:

    Code
    sudo ln -s /etc/nginx/sites-available/reverse-proxy.conf /etc/nginx/sites-enabled/reverse-proxy.conf

    dann

    Code
    sudo nginx -s reload

    Dann bin ich ans Handy und habe wlan ausgeschaltet...und im chrome dann mit LTE

    meine domain.duckdns.org eingegeben.....

    leider geht die Seite immer noch nicht auf.....bin mit meinem Latain am Ende :-(

  • Vielleicht sprichst Du das mal in einem Netzwerk-/Server-Forum an. Mit WordPress hat das was Du da versuchst zu bauen wenig zu tun. Daher wirst Du hier im Forum dazu auch wenig Rückmeldung bekommen.

  • Servus miteinsnder, bins nochmal…
    Wenn der apache2 wrbserver jetzt in einem proxmoxcontainer instslliert ist und funktioniert..gleichzeitig ist auf diesem server unter /var/www/ wordpress installiert das auch funktioniert und such von aussen erreichbar ist..port 80und 443 im Router mit der container ip wo apache2 läuft freigegeben…

    frage..kann ich dann trotzdem zb die nextcloud die in einem anderen container läuft mit snderer ip dann in der vhost datei vom apache2 freigeben…? Geht das?

    ich habe das noch nicht geschnallt, wenn ich den apache 2 auch separat installiere wie dann die config aussehen muss mir dem verweiss auf die subdomain sowie die interne container ip..

    danke und gruss für infos

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!