Avatar billede ranger1 Nybegynder
29. juni 2003 - 14:36 Der er 18 kommentarer og
1 løsning

subdomain med /mappe

Er der nogen der kan hjælpe mig med det her jeg har følgende script.

<?


    $index = "http://www.domæne.dk/index2.html";
    //Domænenavn uden WWW
    $domain = "domæne.dk";
    $host = getenv("HTTP_HOST");
    LIST( $a1, $a2, $a3) = split("\.", $host);
    $check1 = "$a2.$a3";

    if ($check1 == $domain) {
        $sub = $a1;
               
    }

     
    if (!$sub || $sub == "www") {
    include("$index");
    }
    else {




echo "</head>\n\n\n\n";
        echo "<frameset cols=100%,* frameborder=no border=0 framespacing=0>\n";
        echo "<frame src=http://$domain/users/$sub>\n";
        echo "<noframes>\n";
        echo "<body bgcolor=black link=silver alink=black vlink=gray>\n";
        echo "<font face=helvetica color=white><center>\n";
        echo "This page uses frames, but it seems that your browser does not support this feature.\n";
        echo "To move on, click here:<br><a href=http://$domain/users/$sub</a>\n";
        echo "</center></font>\n";
        echo "</body>\n";
        echo "</noframes>\n";
        echo "</frameset></html>\n";
}
?>

det virker fint men jeg vil gerne have det til at kunne virke til en mappe altså sådan her
navn.domæne.dk/mappe

please help me :-)
Avatar billede gonza.dk Nybegynder
29. juni 2003 - 14:45 #1
<?php
if ($_SERVER["HTTP_HOST"] == "foo.domain.dk"){
header("location:http://www.domain.dk/foo");
}

else if ($_SERVER["HTTP_HOST"] == "foo2.domain.dk"){
header("location:http://www.domain.dk/foo2");
}
?>

utestet, burde virke.
Avatar billede gonza.dk Nybegynder
29. juni 2003 - 14:51 #2
<?php
if ($_SERVER["HTTP_HOST"] == "foo.domain.dk"){
header("location:http://www.domain.dk/foo");
}

else if ($_SERVER["HTTP_HOST"] == "foo2.domain.dk"){
header("location:http://www.domain.dk/foo2");
}

else {
echo "Siden ".$_SERVER["HTTP_HOST"]." kunne ikke findes";
}
?>

så fortæller den at siden ikke kan findes, hvis der er skrevet en adresse der ikke eksistere. Og jo, det virker ;o)
Avatar billede ranger1 Nybegynder
29. juni 2003 - 15:47 #3
det er meget fint gonza men det du har der er jo til forud bestemte mapper og det skal det godt nok være i sidste ende men jeg gider ikke lave et nyt script hvergang jeg har lavet en mappe så det jeg allerede har det tjekker om der er en mappe i /users og sender så domænet navn.domæne.dk til mappen af samme navn som ligger i /users men det jeg gerne vil have den til var at når man skrev navn.domæne.dk/mappe og i den lå en index som starter men det gør den altså bare ikke
Avatar billede gonza.dk Nybegynder
29. juni 2003 - 15:53 #4
ranger1 -> "men det jeg gerne vil have den til var at når man skrev navn.domæne.dk/mappe og i den lå en index som starter men det gør den altså bare ikke" hvad er det den index fil skal gøre helt præcist? forstår det ikk lige, jeg skal lige et smut i fakta så længe været holder og de har åben ;o), jeg kikker tilbage senere (måske bliver det først i morgen, men tror det bliver en gang iaften)
Avatar billede ranger1 Nybegynder
29. juni 2003 - 16:01 #5
den index fil skal ikke lave noget specielt kunne lige så godt være en .jpg eller noget andet det skal bare være muligt at skrive navn.dømæne.dk/mappe og hvis den har en index så starter den bare ikke noget hokuspokus der.
Avatar billede gonza.dk Nybegynder
29. juni 2003 - 17:11 #6
nååh, på den måde, kører du egen server? og hvilken server ligger det på? Jeg tror ikke dette kan lade sig gøre i php fordi:

skriver du:
sub.domain.dk/mappe
i adresselinien

så vil den kikke i:
www.domain.dk/mappe

forståeligt? du skal ind og rode i serverens opsætning, hvis du kører apache, kan det gøres meget nemt, kører du ikke apache, ved jeg ikke hvordan det kan gøres, kører du ikke selv server og har ikke adgang til httpd.conf kan jeg nok heller ikke hjælpe.

Kort sagt, fortæl om din webserver, hvilken og hvilken version ;o)
Avatar billede ranger1 Nybegynder
29. juni 2003 - 19:10 #7
hvad nu hvis man gør følgende.

<?

    // Subdomæne uden DNS og Mysql
    // Dette script er lavet af Peter Bjerregaard
    // Meget simpelt laver det dine mapper om til subdomæner.
    // Jeg syntes dog at du bør lave en mappe til dine subdomæner.
    // ::: Minwebside.DK :::

    //Den index side den skal hente hvis det er DIN hjemmeside.
    $index = "http://www.minwebside.dk/index2.html";
    //Domænenavn uden WWW
    $domain = "minwebside.dk";
    $host = getenv("HTTP_HOST");
    LIST( $a1, $a2, $a3) = split("\.", $host);
    $check1 = "$a2.$a3";

    if ($check1 == $domain) {
        $sub = $a1;
               
    }

     
        if (!$sub || $sub == "www") {
    include("$index");
    }
    else {




echo "</head>\n\n\n\n";
        echo "<frameset cols=100%,* frameborder=no border=0 framespacing=0>\n";
        echo "<frame src=<?php 
     
      if ($_SERVER["HTTP_HOST"] == "$sub.$domain"){
      header("location:http://$domain/users/$sub/");
      }?>>\n";
        echo "<noframes>\n";
        echo "<body bgcolor=black link=silver alink=black vlink=gray>\n";
        echo "<font face=helvetica color=white><center>\n";
        echo "This page uses frames, but it seems that your browser does not support this feature.\n";
        echo "To move on, click here:<br><a href=http://$domain/users/$sub/$map</a>\n";
        echo "</center></font>\n";
        echo "</body>\n";
        echo "</noframes>\n";
        echo "</frameset></html>\n";
}
?>

men kan ikke få det til at virke og jeg har ikke adgang til at andre på nogen form for serveropsætning
Avatar billede gonza.dk Nybegynder
29. juni 2003 - 19:19 #8
er struturen bygget op sådan:

www.domain.dk/subs/peter

hvilket giver peter.domain.dk?

problemet er at hvis man så har mappe her:

www.domain.dk/subs/peter/mappe/

og den skal være det samme som

peter.domain.dk/mappe/

men uden nogle php scripts ender

peter.domain.dk
og www.domain.dk i samme mappe

sådan er det bygget op? korrekt?

hvis det, så er problemet jo at når man går ind på:

peter.domain.dk/mappe/

så findes denne mappe ikke da den kikker her:

www.domain.dk/mappe/

den skal istedet kikke her

www.domain.dk/subs/peter/mappe

men da den kikker på www.domain.dk/mappe og denne jo nok ikke findes, ja så har vi problemet. kører du på en apache server? har du mulighed for .htaccess for så kan det muligvis løses (er dog ikke sikker) jeg tror ikke du kan gøre det i ren php, hvis ikke www.domain.dk/mappe er oprettet.
Avatar billede ranger1 Nybegynder
29. juni 2003 - 20:09 #9
Ja det passer meget fint hvad opbygningen angår.
Men det script jeg har tjekker jo rækkefølgen peter.domain.dk og pejer den så hen til mappen www.domain.dk/users/peter, kan jeg så ikke bare få den til at tjekke om der bliver skrevet /mappe efter peter.domain.dk og så få den til at peje på www.domain.dk/users/peter/mappe.

Det må da kunne lade sig gøre når den kan tjekke rækkefølgen på peter.domain.dk så burde den også kunne tjekkke om der står/mappe bag ved det
Avatar billede gonza.dk Nybegynder
29. juni 2003 - 20:41 #10
problemet er jo bare at når du skriver urlen 'peter.domain.dk/mappe' ja så kikker den jo ikke på index.php (*.domain.dk/index.php) men på /mappe/index.php (*.domain.dk/mappe/index.php) denne mappe mappe/fil eksistere jo ikke, og deraf problemet. så er det jeg overvejer om .htaccess kan klare den, det vil jeg da lige undersøge.
Avatar billede ranger1 Nybegynder
30. juni 2003 - 13:43 #11
hvad hvis jeg i den mappe i roden laver en fil som ser sådan her ud
<?php
if (isset($_POST['submit']))

if ($_SERVER["HTTP_HOST"] == "peter.domain.dk/mappe"){
header("location:http://www.domain.dk/users/$sub/mappe");
}

else {
    echo "Det indtastede subdomain eksistere ikke";
}
?>
<form action="" method="post">
<input type="text" name="sub">

<input type="submit" name="submit">
</form>

men jeg kan ikke få den til at hoppe over i den mappe
Avatar billede gonza.dk Nybegynder
30. juni 2003 - 15:24 #12
det er netop det der er problemet, den hopper til i mappen /mappe per default, derfor er det jeg tænker;

hvis man kan lave en .htaccess der ser om filen eksisterer, hvis den ikke eksitere læser den index.php istedet (det er nem nok) men så er det at vi skal have en variabel ført med over til index.php, og det er her vi skal have undersøgt om det kan lade sig gøre. Min pc brød ned igår og jeg har først lige fået den op at køre, så jeg har ikke nået at undersøge det ;o)
Avatar billede ranger1 Nybegynder
30. juni 2003 - 16:06 #13
ok men hvordan laver jeg en formular som sender brugeren til den mappe jeg vil
lad os sige at brugeren indtaster "peter" i et felt og trykker på submit for så derefter at blive sendt til www.domain.dk/users/peter/mappe
Avatar billede gonza.dk Nybegynder
30. juni 2003 - 18:51 #14
lav en .htaccess fil med følgende indhold:

#start .htaccess#

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^([a-zA-Z._/]+)$ /index.php?site=$1 [R]

#slut .htaccess#

når du så skriver f.eks: peter.domain.dk/mappe/foo.php vil du blive overført til:

/index.php?site=mappe/foo.php

denne kan du så hive ned med php og redirecte brugeren til den rigtige side, men det har du vist styr på ;o)

Dette kræver at du kører på en apache server med mod_rewrite slået til. Du kan tjekke det her: http://mod_rewrite.gonza.dk/mappe/foo.php
Avatar billede gonza.dk Nybegynder
30. juni 2003 - 18:53 #15
Avatar billede ranger1 Nybegynder
30. juni 2003 - 22:47 #16
ok jeg får en intern server fejl 500 så det er åbenbart ikke sålået til og jeg har ikke adgang til at ændre i server opsætningen, jeg vil prøve at kontakte deres support som sikkert kan svare mig om det er eller ej.

Kan det måske være mig der laver den .htaccess fil forkert ?
Jeg laver det i notepad som test.txt oploader den og renamer den til .htaccess i roden af mit website.
er det rigtigt ?

Hvad for et php script bruger du så til at finde subdomains med ?
Avatar billede ranger1 Nybegynder
30. juni 2003 - 23:23 #17
ok jeg har fundet en anden løsning som virker for mig jeg tager bae mit eget script og laver en mappe i roden som så får mit subdomain til at peje på den mappe jeg vil have, dette virker dog kun med faste bestemte mapper men jeg er tilfreds og håber da der er andre der kan få glæde af de her indlæg
Avatar billede gonza.dk Nybegynder
01. juli 2003 - 01:44 #18
subdomænet aflæses som før, da han jo forbliver på subdomænet: peter.domain.dk/mappe/foo.php vil med denne .htaccess fil give:

peter.domain.dk/index.php?site=mappe/foo.php

derfor kan du aflæse subdomænet 'peter' med en explode af $_server["REQUEST_URI"]:

<?php
$site = $_GET["site"];

$url = $_server["REQUEST_URI"];

$url_array = explode(".", $url);

$location = "subs/".$url_array[0]."/".$site;
header("location:$location");
?>
Avatar billede gonza.dk Nybegynder
01. juli 2003 - 01:49 #19
det lyder til at du laver .htaccess rigtigt, da den jo læser filen for at give dig en serverfejl. en .htaccess fil skal hedde .htaccess (intet før punktum)

takker for points, og godt at du fandt en løsning, men ville være bedre hvis det virkede optimalt jo ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester