apache - URL du nom de domaine de deuxième niveau mappé au nom de domaine de premier niveau
给我你的怀抱
给我你的怀抱 2017-05-16 17:03:56
0
4
924

Supposons que le nom de domaine de premier niveau soit taobao.com
Chaque magasin possède un nom de domaine de deuxième niveau. Il existe un magasin appelé Baobao, et son nom de domaine est baobao.taobao.com
Chaque magasin est accessible via le nom de domaine de deuxième niveau et redirigé vers taobao.com/shop/baobao

C'est-à-dire qu'il existe un grand nombre de magasins, chaque magasin a un nom de domaine de deuxième niveau, en supposant que le nom de domaine soit xxx.taobao.com
Il faut se tourner vers taobao.com/shop/xxx

Les enregistrements DNS *A pointent tous vers cette machine.
S'il est implémenté à l'aide d'Apache mod_rewrite, comment écrire la configuration ?

Existe-t-il d'autres moyens ?

给我你的怀抱
给我你的怀抱

répondre à tous(4)
淡淡烟草味

Nginx s'écrit probablement ainsi :

server {
  listen 80;
  server_name xxx.taobao.com;
  if ( $http_host ~* “^(.*)\.taobao\.com$”) {
  set $domain ;
  rewrite ^(.*) http://taobao.com/$domain/ break;
  }
}

Apache est similaire à :

RewriteRule ^/([-a-z0-9]+)\.taobao\.com\/?$ http://taobao.com// [L]
迷茫

Objectif
Lors de l'accès à abc.test.com, vous accédez à www.test.com/test/abc, l'adresse du navigateur affichera l'adresse abc.test.com.
Méthode
Ajoutez un nouvel hôte virtuel au fichier de configuration Apache
NomVirtualHost :80

Nom du serveur www.test.com
ServeurAlias ​​​​*.test.com
DocumentRoot /var/www/test
réécrire le moteur activé
réécriturecond %{HTTP_HOST} [^.]+.test.com$
réécriture de la règle ^(.+) %{HTTP_HOST}$1 [C]
rewriterule ([^.]+).test.com(.
) /test/$1$2 #/test est le répertoire derrière www.test.com/

De plus, pouvez-vous activer votre débogage et consulter les journaux ?

小葫芦

J'ai ajouté la configuration Apache :
RewriteRule ^/([-a-z0-9]+).xiaocaowangluo.com/?$ http://xiaocaowangluo.com/shop/$1/ [L]

Il y a deux connexions ici http://xiaocaowangluo.com/shop/test/ http://test.xiaocaowangluo.com/ Cette configuration a été ajoutée.

http://test.xiaocaowangluo.com/ Je ne parviens toujours pas à accéder à http://xiaocaowangluo.com/shop/test/ Dois-je en ajouter d'autres

Pour moi d'utiliser
RewriteEngine sur RewriteCond %{HTTP_HOST} ^[^.]+.xiaocaowangluo.com$
RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^([^.]+).xiaocaowangluo.com(.*) /www/xiaocaowangluo/shop/$1$2

Cette configuration ne fonctionne pas non plus, aidez-moi s'il vous plaît.

给我你的怀抱

Apache peut s'écrire comme ça

RewriteRule ^/([-a-z0-9]+)\.yourdomain\.com\/?$ http://taobao.com// [L]

Configuration de l'application :
http://www.aips.me/sae-binding-domain-subdirectory.html

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal