Apache subdirectory -> subdomain mogelijk?

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • aadje93
  • Registratie: Juli 2009
  • Laatst online: 12-10 17:05
Voor een website die nu subdirectory's gebruikt voor vertalingen zou ik graag subdomeinen gebruiken i.c.m. virtual hosts (sommigen zullen via vps dichterbij gelokaliseerd worden) Echter ben ik helemaal niet thuis in deze materie, een basis virtual host draait prima, beveiligings dingen en apache modules uitzetten die niet gebruikt worden etc kan ik gewoon (vps) echter het programmeerwerk is niet mijn tak van sport.

Is het dus mogelijk om met apache subdirectory's door te sturen naar een sub-domein?

Ik hoor het graag, mijn internetzoektocht kwam niet verder dan mod_alias en mod_rewrite, waarbij de eerste meerdere subdirectory's naar 1 map laat verwijzen (kan ook gewoon in linux zelf met ln?) en de 2e is uiteraard voor doorsturingen van http://domein.com/ naar https://domein.com/ etc.

Ik hoop dat iemand mij hiermee kan helpen

Acties:
  • 0 Henk 'm!

  • MrChillax
  • Registratie: Januari 2015
  • Laatst online: 27-03-2024
Wat staat er in je VHOST momenteel? Je kunt een simpele RewriteRule gebruiken hierbij;

code:
1
2
RewriteCond %{Request_URI} /<SUBDIR>/?$
RewriteRule ^ http://sub.domein.nl [L,R=301]


Hierbij wordt gebruik gemaakt van mod_rewrite. De bovenste code zal <SUBDIR>/ in het URI path sturen naar http://sub.domein.nl via een 301 redirect. Hopelijk heb je hier wat aan, zo niet hoor ik het graag.

Acties:
  • 0 Henk 'm!

  • aadje93
  • Registratie: Juli 2009
  • Laatst online: 12-10 17:05
Hey,

Bedankt voor het snelle antwoord, ik zat ook aan een 301 te denken, alleen zorgt dat voor een permanente rewrite waarbij de browser bij de volgende request automatisch sub.domein.nl aanvraagt toch?

De data staat echter bij sommige servers nog wel in sub-folders die eigenlijk als sub-domein geleverd moeten worden, is dit mogelijk met virtualhosts en dan /domein/subdirectory/ als documentroot gebruiken voor de virtualhost van het subdomein? (nu /domein/ als hoofddomein root)

Acties:
  • 0 Henk 'm!

  • enterz
  • Registratie: Februari 2010
  • Laatst online: 22-09 21:48
Als je subdomains inderdaad statisch zijn. Je maakt ze dus niet aan in je code dan is het meest handige om ze gewoon te configureren in je webserver (apache bijvoorbeeld). Dit kan zoals je aangeeft door je webroot te koppelen aan een ander domain.

Beetje afhangend van je linux distributie kun je een config maken (of de default configureren) in: /etc/apache2/sites-available/[sitename].conf

Zet daar iets in van:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<VirtualHost *:80>
        Servername sub.domain.nl
        ServerAlias www.sub.domain.nl # of andere aliassen die dezelfde webroot delen
        DocumentRoot /var/www/subdomain/public_html/ # Webroot folder

<Directory /var/www/subdomain/public_html >
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                require all granted
</Directory>

.... # Overige configuratie, cgi, logging, etc.

</VirtualHost>


Als je configuratie in orde is voer je het commando: sudo a2ensite [sitenaam] uit op de linux prompt .
Als daar geen fouten uitkomen herlaadt je de apache config: sudo service apache2 reload

De commands zijn een beetje distro afhankelijk, zouden moeten werken op Ubuntu/Debian Server.

Doorsturen van http-> https is iets van een redirect doen in je HTTP site configuratie (er van uitgaande dat je site het reeds doet op HTTPS natuurlijk)

(dit is de manier waarop 'letsencrypt' het voor je doet)
code:
1
2
RewriteEngine on
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [L,QSA,R=permanent]


tip: Je kunt de HTTPS laten regelen door https://letsencrypt.org/. Is nog in Beta maar werkt al wel. Hangt een beetje af van je eisen voor HTTPS natuurlijk :)

Acties:
  • 0 Henk 'm!

  • ZonderTaal
  • Registratie: November 2015
  • Laatst online: 08-10 12:28
mod_vhost_alias lets you automatically configure unlimited virtual hosts to point at subdirectories based on a pattern using the domain name.

https://httpd.apache.org/docs/2.4/mod/mod_vhost_alias.html