2010-11-01 2 views
0

Je voudrais un peu d'aide avec cesolution d'expression rationnelle pour www et domaine non www

Code de travail: regex pour correspondre xxx.domain.com

$HTTP["host"] =~ "^[^.]+\.domain\.com$" { 
    evhost.path-pattern = vhosts_dir + "/company/domain.com/subdomains/%3/" 
} 

Www ne fonctionne pas: (au regex domaine .com fonctionne)

else $HTTP["host"] =~ "^([^.]+\.)?domain\.com$" { 
evhost.path-pattern = vhosts_dir + "/company/domain.com/public/" 
} 

Comment faire pour que www fonctionne avec le deuxième exemple de code?

^(^ |. Www) example.com

$

Merci

Magnus

+0

À quoi sert le domaine + après dans votre première expression rationnelle? Cela correspond à domainnnnnn. De plus, vous avez perdu l'ancre au début de la chaîne^dans le deuxième exemple. Ceux-ci me font penser que vous avez peut-être fait une erreur par inadvertance en changeant les choses pour la question du flux Stackover - pourriez-vous vérifier? –

+0

J'ai changé l'exemple de code maintenant. Meilleur? –

Répondre

0

qu'aligner \bdomain.com$ est probablement assez bon, à moins que vous vous inquiétez de montrer "bogus-domain.com" up . Ensuite, vous pouvez écrire ^(?:[^.]+\.)*domain\.com$.

Avez-vous canonisé en minuscules?

+0

Merci tchrist pour le code pour empêcher les faux domaines. Je ne connaissais jamais ce scénario. Je suis un novice, que voulez-vous dire par canonisé en minuscules? –

+0

et ... est-il possible d'obtenir www pour travailler avec votre solution? –

+0

^(?: www | [^.] + \.) * Domaine \ .com $ –

Questions connexes