Nu subdomain is op vershillende mogelijkheden te bouwen.
Met htaccess
dan moet je zeker ook op de server gekend zijn.
dus stel je gaat subdomeinen gaan registreren(dns) kan maar hoeft niet.
dus stel je gaat uw server de subdomeinen laten beheren via je hostfile en dan via uw sites naar het zelfde path leiden.
dus je kijkt naar http.conf en dan ook eens in httpd-ssl.conf en dan ook eens in httpd-vhosts.conf
let op dit is een oud voorbeeld de nieuwe appache ziet er net iets anders uit. LET OP 'C:\site'
LET OP * zal veranderen naar site.dev bij shared hosting (werkt ook op xampp)
Code:
<VirtualHost *:80>
DocumentRoot "C:\site"
ServerName site.dev
ServerAlias www.site.dev
ServerAlias nl.site.dev
ServerAlias nl.subje.site.dev
ServerAlias subje.site.dev
ServerAlias en.site.dev
ServerAlias en.subje.site.dev
ServerAlias fr.site.dev
ServerAlias ru.site.dev
ServerAlias es.site.dev
<Directory "C:\site">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
en dus ook de regel 443
Code:
<VirtualHost *:443>
DocumentRoot "C:\site"
ServerName site.dev
ServerAlias www.site.dev
ServerAlias nl.site.dev
ServerAlias nl.subje.site.dev
ServerAlias subje.site.dev
ServerAlias en.site.dev
ServerAlias en.subje.site.dev
ServerAlias fr.site.dev
ServerAlias ru.site.dev
ServerAlias es.site.dev
<Directory "C:\site">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Voor windows
certificaten aanvaarden of weigeren (als je je eigen certificaat niet vertrouwd zal appache het ook niet doen)
1 C:\Windows\System32\mmc.exe certmgr.msc
voor linux (pico is texteditor )
------
pico /etc/hosts
127.0.0.1 myphp.vm64
------
pico /etc/apache2/sites-available/default-ssl
<VirtualHost *:80>
ServerName myphp.vm64
DocumentRoot /var/www/myhp.vm64/web/
</VirtualHost>
new
cp 000-default.conf site.conf
pico /etc/apache2/sites-available
1 <Virtualhost _default_:83>
****ServerName localhost
****ServerAdmin me@localhost
****DirectoryIndex index.html index.php
****ErrorLog logs/error.log
****#
http://httpd.apache.org/docs-2.1/mod/core.html.en#limit
****<Location />
******<Limit CONNECT>
********Order allow,deny
********Allow from all
******</Limit>
****</Location>
****DocumentRoot "C:/server/www6/"
****ScriptAlias /cgi-bin/ "C:/server/php6/"
****Action**** php6-script /cgi-bin/php-cgi.exe
****AddHandler php6-script .php .html
</Virtualhost>
MAAR als ik dan zie
www.mijnwebsite.nl www. is al een subdomain
stel dat je het doet via .htaccess
1 ### BELANGRIJK:
2 # Het pad in de regel met REQUEST_URI moet overeenkomen met
3 # het pad in de regel met RewriteRule, anders ontstaat er een loop!!!
4 # Zie de verschillen tussen voorbeeld2 en voorbeeld3
5
6 # Zet de RewriteEngine aan
7 RewriteEngine On
8
9 # voorbeeld1.uwdomein.nl
10 # Deze haalt pagina's uit
http://www.uwdomein.nl/voorbeeld1/
11 RewriteCond %{HTTP_HOST} ^voorbeeld1.uwdomein.nl$
12 RewriteCond %{REQUEST_URI} !^/voorbeeld1/
13 RewriteRule (.*) /voorbeeld1/$1
14
15 # voorbeeld2.uwdomein.nl
16 # Deze haalt pagina's uit
http://www.uwdomein.nl/voorbeeld2/
17 RewriteCond %{HTTP_HOST} ^voorbeeld2.uwdomein.nl$
18 RewriteCond %{REQUEST_URI} !^/voorbeeld2/
19 RewriteRule (.*) /voorbeeld2/$1
20
21 # voorbeeld3.uwdomein.nl
22 # Deze haalt _ook_ pagina's uit
http://www.uwdomein.nl/voorbeeld2/
23 RewriteCond %{HTTP_HOST} ^voorbeeld3.uwdomein.nl$
24 RewriteCond %{REQUEST_URI} !^/voorbeeld2/
25 RewriteRule (.*) /voorbeeld2/$1
bovenstaande zou je kunnen zien als dit ook
1 RewriteEngine on
2 RewriteCond %{HTTP_HOST} ^(.*)\.domain\.com
3 RewriteRule ^(.*)$ http://domain.com/subdomains/%1/$1 [L,NC,QSA]
je kan het zien als wegen naar rome er zijn er heel veel. en ik heb me dan nog beperkt tot de meest gebruikte vormen.(wil je ergens meer over weten vraag het)