Nginx subdomains config

  • Hello everyone.
    On my OMV I install nginx plugin.
    I have my domain fo example mydomain.com



    On nginx I create several websites: nextcloud, wordpress and standard www webpage


    nextcloud uses port 500
    wordpress uses port 600
    and some other page on port 700


    These ports are redirect on my router
    Everything works fine when I insert mydomain.com:500 or mydomain.com:600


    I would like to reconfigure nginx to work like that:
    When I insert oc.mydomain.com will open my nextcloud website
    When I insert blog.mydomain.com will open my wordpress website
    When I insert mydomain.com its work becouse it is redirect on my ruter from port 80 to 700

  • @jaros85 and if you need a dns on your domain, you must set the subdomains on a cname forwarding.

    omv 6.x | 64 bit | omvextrasorg 6.x |
    used plugins: omv-extras | portainer | rsnapshot | antivirus
    used container: portainer/portainer | nextcloud/all-in-one | linuxserver/swag | paperless-ngx | jellyfin/jellyfin | lmscommunity/logitechmediaserver | adguard/adguardhome |

  • i think its right. and you must a setup in your nginx-plugin with a namebased surfer with the full name for example shell.dynu.net
    But by the way... i would not use a shell over the internet ;)

    omv 6.x | 64 bit | omvextrasorg 6.x |
    used plugins: omv-extras | portainer | rsnapshot | antivirus
    used container: portainer/portainer | nextcloud/all-in-one | linuxserver/swag | paperless-ngx | jellyfin/jellyfin | lmscommunity/logitechmediaserver | adguard/adguardhome |

  • Hello again.
    I made both settings but somethings goes wrong and still not working:
    https://forum.openmediavault.o…ostname-Nginx-Proxy-pass/
    http://blog.manugarri.com/how-…bdomain-routing-in-nginx/


    Files wasn't exist before, now they looks like below:


    /etc/nginx/sites-available/multi_host
    #defaultwebserver { server_name mydomain.com; listen [::]:80; location / { proxy_pass http://localhost:700/; }}

    #defaultwebserver { server_name mydomain.com; listen [::]:443; location / { proxy_pass http://localhost:743/; }}

    #nextcloudserver { server_name oc.mydomain.com; listen [::]:80; location / { proxy_pass http://localhost:500/; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }}

    #nextcloud_httpsserver { server_name oc.mydomain.com; listen [::]:443; location / { proxy_pass http://localhost:543/; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }}

    #blogserver { server_name blog.mydomain.com; listen [::]:80; location / { proxy_pass_header X-Transmission-Session-Id; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://localhost:600; }}


    /etc/nginx/sites-enabled/default


    server { listen 80;server_name mydomain.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_pass http://127.0.0.1:580; }}

    server { listen 443;server_name mydomain.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_pass http://127.0.0.1:543; }}

    server { listen 80;server_name oc.mydomain.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_pass http://127.0.0.1:8443; }}

    server { listen 443;server_name oc.mydomain.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_pass http://127.0.0.1:8443; }}

    server { listen 80;server_name blog.mydomain.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_pass http://127.0.0.1:680; }}


    /etc/nginx/sites-enabled/multi_host



    mydomain.com is not my local domain in LAN but this is some webpage addres available in international DNS servers.



    Please help what im doing wrong.

  • Hi, you must update your DNS records with your DNS provider to point subdomain.domain.com to your dynamic/static public IP.


    Without this DNS info updated, no computer knows how to find the IP of your webserver.


    You'll have to reformat your nginx conf files for me to look at them... sorry.

  • DNS records was update earlier.
    A record mydomain.com -> my public IP
    CNAME record oc.mydomain.com -> mydomain.com
    CNAME record blog.mydomain.com -> mydomain.com


    Now when I open http://www.mydomain.com default is opening web page listening on port 700 because in my router there is redirect port 80 to 700.
    When I open http://www.blog.mydomain.com or http://www.oc.mydomain.com also open webpage listen on 700 port.
    Files looks like below but after I create these files I cannot login to OMV web browser cannot establish security connection in IE and FF.



  • Hi you need to supply the SSL certificates alongside OMV reverse proxy information. If you still need help let me know.



    Also you will need to generate a certificate for mydomain.com, not your openmediavault local hostname (if it was openmediavault.local for the SSL, visiting via mydomain.com will always give warnings)

Jetzt mitmachen!

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