Ich verwende Wildcard mit Apache
meine APACHE CONFIG:
ServerAlias *.staronece1.com
DocumentRoot /staronece1/domains
meine benannte Datei
$ttl 38400
staronece1.com. IN SOA staronece1.com. email.yahoo.com. (
1334838782
10800
3600
604800
38400 )
staronece1.com. IN NS staronece1.com.
staronece1.com. IN A 95.19.203.21
www.staronece1.com. IN A 95.19.203.21
server.staronece1.com. IN A 95.19.203.21
mail.staronece1.com. IN A 95.19.203.21
ns1.staronece1.com. IN A 95.19.203.21
ns2.staronece1.com. IN A 95.19.203.21
staronece1.com. IN NS ns1.staronece1.com.
staronece1.com. IN NS ns2.staronece1.com.
staronece1.com. IN MX 10 mail.staronece1.com.
* 14400 IN A 95.19.203.21
*.staronece1.com IN A 95.19.203.21
meine PHP-Testdatei
/staronece1/domains/index.php
<?php
function getBname(){
$bname=explode(".",$_SERVER['HTTP_HOST'],2);
return $bname[0];
}
echo 'SubDomain is :'.getBname();
?>
wenn ich gehe zu something.staronece1.com
Ich bekomme dieses Ergebnis SubDomain is : something
Nein, das Problem ist
if i go to www.staronece1.com
Ich sollte ein leeres Ergebnis erhalten, da www keine Subdomain ist
aber ich bekomme dieses Ergebnis
SubDomain is : www
Und wenn ich gehe zu www.something.staronece1.com
Ich erhalte eine Firefox-Fehlermeldung (Seite nicht gefunden)
Wie kann ich dieses Problem beheben?
Ich denke, die Lösung ist: Datensatz für www in der genannten Datei hinzugefügt
Vielen Dank
apache-2.2
Alaa Gamal
quelle
quelle
www
ist definitiv eine Subdomain.Antworten:
Wie Miles bemerkte,
www
handelt es sich um eine reguläre Subdomain, die sich nicht unterscheidetsomething
. In diesem Sinne ist es sehr irreführend, und es ist nicht deine Schuld, dass du sie verwirrt hast.Zum einen sind die DNS-Zonen irrelevant: Sie
www.staronece1.com
müssen eine Auflösung vornehmen, sonst funktioniert die Website überhaupt nicht. Lassen Sie das also in Ruhe.Wenn Sie dieses Verhalten wirklich möchten, müssen Sie
ServerAlias www.staronece1.com
vor Ihrem aktuellen Platzhalter einen separaten Platzhalter verwendenServerAlias
.http://httpd.apache.org/docs/current/mod/core.html#serveralias
quelle
Ich bin nicht sicher, ob ich verstehe, was das Problem ist. Der Server verhält sich wie vorgesehen. Wenn das Problem darin besteht, dass www.something.staronece1.com nicht funktioniert, fügen Sie einen DNS-Eintrag für www.something.staronece1.com hinzu und fügen Sie Ihrer httpd.conf eine weitere Serveralias-Zeile hinzu:
Fügen Sie es im Idealfall unter den anderen ServerAlias-Zeilen hinzu.
quelle