2017-07-03 2 views
0

Ich bin für ein Projekt ähnlich Pastebin. Jedem Snippet sollte eine kurze eindeutige URL zur Verfügung stehen, auf die jeder zugreifen kann. Zum Beispiel, wenn ich ein neues Snippet mache, dann hätte das eine assoziierte URL wie/2k3nan5. Jeder, der yourwebsite.com/2k3nan5 besucht, sollte dieses Snippet sehen.Wie erhalten Sie eine kurze eindeutige URL mit mod_rewrite im folgenden Fall?

Ich erstelle eine zufällige Zeichenfolge für jedes Snippet, das eingefügt wird, z. B. 2k3nan5. Ich speichere den Code des Snippets (Code), den Benutzernamen des Benutzers, der es geschrieben (Benutzername) und die zufällige Zeichenfolge (url) in der Snippet Tabelle der Datenbank.

Wie ändere ich .htaccess dafür?

+2

www.website.com/deltatask/snippet.php?url=abcdefg Was hast du probiert? Es gibt viele Beispiele dafür, wenn Sie einfach nach htaccess und mod_rewrite suchen. –

+1

Sie verwenden eine Datenbank, für jede _new_ URL generieren Sie den "short code", einen einfachen Zähler, und speichert den endgültigen Ort (URL) in einem Eintrag in der Datenbank. Dann nehmen Sie zum Zeitpunkt der Anforderung den bereitgestellten Funktionscode in der Anforderung und können die endgültige Ziel-URL von der Datenbank abfragen. – arkascha

+0

Ich habe viel versucht und die Antwort gefunden und es funktioniert. Ich aktualisiere es als Antwort –

Antwort

0
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([a-zA-Z0-9]{7})/?$ deltatask/snippet.php?url=$1 [NC,L] 
</IfModule> 

Das half mir www.website.com/abcdefg in Umschreiben

0

mod_rewrite Code entfernen Dateinamen

<IfModule mod_rewrite.c> 
RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-s 
RewriteRule ^(.*)$ snippet.php?id=$1 [QSA,NC,L] 

RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^(.*)$ snippet.php [QSA,NC,L] 

RewriteCond %{REQUEST_FILENAME} -s 
RewriteRule ^(.*)$ snippet.php [QSA,NC,L] 
</IfModule> 
+0

Kannst du mir eine gute Seite vorschlagen, um mehr über mod_rewrite zu erfahren, damit ich den Code verstehen kann, den du als Antwort gegeben hast? –

+1

@BenedictFlourance -Bitte lesen Sie: [Welche Themen kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic). _ "Fragen, die uns bitten, ein Buch, ein Tool, eine Softwarebibliothek, ein Lernprogramm oder eine andere Offsite-Ressource zu empfehlen oder zu finden, sind für Stack Overflow off-topic, da sie tendenziell eigensinnige Antworten und Spam anziehen." _ - Benutze einfach google "php htaccess Tutorial " –

+0

@BenedictFlorance - https://www.addedbytes.com/articles/for-beginners/url-rewriting-for-beginners/ Referenz verwendet –

Verwandte Themen