Yönlendirme sorun için, böyle bir şey denemelisiniz:
. htaccess dosyası:
RewriteEngine on
RewriteCond $1 !^(index\.php)
RewriteRule ^(.*)$ index.php?url=$1 [L]
Ve index.php:
<?php
$url = $_GET['url'];
// These will be taken from database
$urls_associations = array(
'1234' => "http_//www.example.com",
'5678' => "http_//www.google.com",
'90AB' => "http_//stackoverflow.com",
);
// Redirect
if (isset($urls_associations[$url])) {
$redirect = $urls_associations[$url];
header("Location: $redirect");
echo "<a href='$redirect'>Go To : $redirect</a>";
} else {
echo "Unknown URL code.";
}
Ardından, kullanıcı örneğin gittiğinde. HTTP_ / / localhost/1234, o Elbette, bunun yerine bir dizi okuma veritabanı üzerinde bir sorgu çalıştırmak gerekir, vb HTTP_ / / example.com yönlendiriliyorsunuz, ama oldukça kolay görünüyor olur, gibi bir şey kullanabilirsiniz:
$code = mysql_escape_string($url);
$res = mysql_query("SELECT url FROM mytable WHERE code='$code'");
if ($redirect = mysql_result($res)) {
header("Location: $redirect");
echo "<a href='$redirect'>Go To : $redirect</a>";
} else {
echo "Unknown URL code.";
}
(NOT: $ urls_associations içinde olan '_' yerine ':' Ben buraya yeni bir kullanıcı olduğum için, ben üç bağlantıları açamazsınız :))