urlparser.php

Gesponsorde koppelingen

PHP script bestanden

  1. urlparser.php

« Lees de omschrijving en reacties

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
<?php

#########################################################################################
##                               URL Request Parser V1.1                               ##
##                                                                                     ##
## Het vermenigvuldigen, verspreiden, gebruiken (ook commercieel) en aanpassen is      ##
## toegestaan. Het verkopen van dit script voor geld, goederen, of andere ruilmiddelen ##
## is niet toegestaan!                                                                 ##
##                                                                                     ##
#########################################################################################



/*#######################################################################################
Vereisten:
- PHP
- Apache
- Ondersteuning voor .htaccess bestanden
- Mod_rewrite



Installatie:
1. Configuratie veranderen
2. Uploaden naar server
3. Bijgevoegde .htaccess code toevoegen/uploaden



Werking:
Dit script maakt het mogelijk om voor een bepaalde map geen extensie meer te hoeven
gebruiken:

http://www.example.com/index.php
wordt
http://www.example.com/index

http://www.example.com/forum/index.html
wordt
http://www.example.com/forum/index

http://www.example.com/forum/index.php?topic=0345121&post=241575
wordt
http://www.example.com/forum/index?topic=0345121&post=241575

Als er meerdere bestanden met dezelfde naam zijn, maar niet met dezelfde extensie, dan
zal het script het rijtje van alle opgegeven extensies langs gaan. Als .php voor .html
staat, zal het .php bestand worden ingevoegd.



.htacces inhoud:
<IfModule mod_rewrite.c>

    RewriteEngine On

    # bestaande mappen of bestanden
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.* - [L]

    # niet-bestaande mappen of bestanden

    RewriteRule ^(.*)/? urlparser.php?q=$1 [L]

</IfModule>


#######################################################################################*/



#########################################################################################
// Configuratie

// Toegestane extensies

$extensions = array(

'.php',
'.html',
'.phtml',
'.php3',
'.xml',
'.asp',
'.apsx',
'.jsp'

);

// Niet gevonden pagina
$notexist   = "nietgevonden.php";

#########################################################################################



#########################################################################################


$url       = trim($_GET['q']);                                               // Haal opgevraagde url op
$url_parse = parse_url($url);                                                // Verdeel url in stukken
$url       = rtrim($url_parse['path'], '/');                                 // Verwijder slash



$i          = 0;                                                             // Bereid teller van whileloop voor
$count      = count($extensions) + 1;                                        // Bereid conditie van whileloop voor
$extensions = array_reverse($extensions);                                    // Keer array om



while($i < $count || !$result['found']) {                                    // Doorgaan totdat array is doorgelopen, of de bestandsextensie is gevonden
    if(file_exists($url.$extensions[$i])) {                              // Bestaat bestand + extensie?

        $result['found']     = TRUE;                                 // Gevonden: true
        $result['extension'] = $extensions[$i];                      // Extensie opslaan

    } elseif(!isset($result['found']) && !isset($result['extension'])) { // Niet gevonden: (tijdelijk) false

        $result['found']     = FALSE;                                // Gevonden: false
        $result['extension'] = "";                                   // Extensievariabele defineren

    }

    $i++;                                                                // 1 bij $i optellen
}


if($result['found'] && isset($result['extension'])) {                        // Is het bestand en de bijbehordende extensie gevonden?

    include $url . $result['extension'];                                 // bestand zonder query invoegen

} else {                                                                     // Bestand niet gevonden

    include $notexist;                                                   // Foutpagina invoegen

}

#########################################################################################

?>

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.