Je subdomein een website geven. voor een subdomein (zoals sub.example.com) kun je ook een eigen website geven. De website van jouw subdomein plaats je in een eigen map met dezelfde naam, bijvoorbeeld /www/sub
.
Een eigen website voor een subdomein regel je door onderstaande code te plaatsen in een .htaccess
-configuratiebestand (Linux Apache) of web.config
XML-configuratiebestand (Windows Server IIS). In de voorbeelden hieronder vervang je (sub)\.example\.com
door jouw subdomein plus domeinnaam. Zet ook haakjes om het subdomein en plaats een \
voor iedere punt.
Een subdomein kan bijvoorbeeld ook shop.example.com, webshop.example.com of kantoor.example.com zijn.
Link naar deze kopLinux Apache .htaccess
Op een Linux server met Apache webserver kun je het volgende .htaccess
-voorbeeld gebruiken:
RewriteEngine On
# Let op! Er moet een .htaccess in de map van het subdomein staan met de tekst RewriteEngine On.
# Eigen website voor subdomein
RewriteCond %{HTTP_HOST} ^(sub)\.example\.com$
RewriteCond %{PATH_INFO} !^/sub
RewriteRule (.*) /%1/$1 [L,END]
Let op: je moet een .htaccess met daarin alleen RewriteEngine On
plaatsen in de doel-map /sub
Link naar deze kopWindows Server IIS web.config
Je kunt dit ook regelen met een web.config
XML-configuratiebestand voor Windows Server IIS.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Eigen website voor subdomein sub">
<match url="(.*)" />
<conditions trackAllCaptures="true">
<add input="{HTTP_HOST}" pattern="^(sub)\.example\.com$" />
<add input="{PATH_INFO}" pattern="^/sub" negate="true" />
</conditions>
<action type="Rewrite" url="/{C:1}/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Let op: ook al functioneert het .htaccess
-voorbeeld van Apache hierboven ook op Windows Server IIS, je kunt het beste gebruikmaken van web.config
-bestanden. Dat is native voor Windows Server IIS, gebruik bij voorkeur geen .htaccess op Windows.
Link naar deze kopMeerdere subdomein groeperen in één (1) rule
Geavanceerde gebruikers kunnen meerdere subdomeinen groeperen in één (1) regel. Zodoende hoef je voor tien subdomeinen niet tien keer bijna dezelfde regels te maken. Wel moeten alle subdomeinen op opgegeven worden. Een kort .htaccess-voorbeeld:
RewriteEngine On
# Let op! Er moet een .htaccess in de mappen van elk subdomein staan met de tekst RewriteEngine On
# Eigen website voor meerdere subdomeinen tegelijk.
RewriteCond %{HTTP_HOST} ^(images|assets|js)\.example\.com$
RewriteCond %{PATH_INFO} !^/(images|assets|js)
RewriteRule (.*) /%1/$1 [L,END]
In dit voorbeeld worden de subdomeinen images, assets en js herschreven. De pipe (|
) vertaalt zich naar “of”, dus:
- is de HTTP_HOST images.example.com, of assets.example.com, of js.example.com?
- en is PATH_INFO niet images, of assets, of js?
- herschrijf het request dan naar /subdomein
de $1
in RewriteRule zorgt ervoor dat het opgevraagde bestand ook meegegeven wordt, bijvoorbeeld afbeelding.jpg (/images/afbeelding.jpg)
Let op: je moet een .htaccess met daarin alleen RewriteEngine On
plaatsen in de doel-map /example.net
In een web.config
XML-configuratiebestand werkt dit net zo:
...
<rule name="Eigen website voor meerdere subdomeinen">
<match url="(.*)" />
<conditions trackAllCaptures="true">
<add input="{HTTP_HOST}" pattern="^(images|assets)\.example\.com$" />
<add input="{PATH_INFO}" pattern="^/(images|assets)" negate="true" />
</conditions>
<action type="Rewrite" url="/{C:1}/{R:1}" />
</rule>
...
Wat vind jij van dit antwoord?
Bedankt voor je feedback!
Er is een fout opgetreden. Probeer het later opnieuw.