Myślę, że jesteś na dobrej drodze.
Jedna rzecz, której nie zrobiłbym tak, jak powiedziałeś, dotyczy tej części:
Nie sądzę, że stworzyłbym regułę Apache RewriteRule, ani nie używał mod_rewrite
.
Gdy otrzymujesz krótki adres URL, taki jak short.com/MYID
, Chciałbym :
- odszyfruj część „MYID” do numeru identyfikacyjnego w DB
- pobierz adres URL z bazy danych
- po prostu przekieruj do tego adresu URL z jakiegoś kodu serwera (np. PHP, używając
header
funkcja)
Chyba trochę tak :
// fetch $urlFull from DB (corresponding to the MYID received in GET)
header('HTTP/1.x 301 Moved Permanently');
header('Location: ' . $urlFull);
die;
(edytuj) Jeśli przez mod_rewrite
chodziło Ci o „przekształcenie short.com/MYID w short.com/id=MYID ", o tak, w tym przypadku oczywiście!
Używam czegoś takiego na jednej z moich stron, btw :
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/index.php
RewriteRule ^(.*)$ /index.php?hash=$1 [L]
Mam nadzieję, że to pomoże :-)