2016-07-11 9 views
0

Ich habe eine Website, die URLs in diesem Format www.example.com/jobs.php?id=123456Redirect URLs ohne .htaccess

Alle URLs gespeichert werden in einer Datenbank enthält.

Ich möchte SEO-freundliche URLs (Beispiel: www.example.com/this-is-my-first-job) machen

ich gebaut habe, diese Webseite in PHP.

ist es möglich, SEO freundliche URLs aus dem aktuellen Format zu generieren, ohne die .htaccess Datei zu ändern?

+0

Was meinst du mit "core php"? Sprechen Sie über den integrierten Webserver von PHP? –

+0

setzen Sie diese Optionen + FolgenSymLinks RewriteEngine auf RewriteRule (. *) Http://www.example.com/thisis-is-my-first-job/$1 [R = 301, L] in Ihrem .httpd die Conf-Datei gefolgt von RewriteEngine on - stellen Sie sicher, dass Mod Rewrite aktiviert ist. – unixmiah

+0

oder Sie können PHP Redirect Header ('Ort: http://www.gotourl.com'); – unixmiah

Antwort

0

Ich sage einfach.

Wenn jemand einen Job auf meine Website veröffentlichen, speichern wir alle Informationen in der Datenbank und erzeugen einen eindeutigen Schlüssel (lassen 123456 sagen) und füllen auf einer einzigen Seite basierend auf der URL, die www.somewebsite.com?mypage?id=123456 wäre Jetzt mag ich die vorhandene URL geändert werden. Ich möchte, dass wenn Benutzer diese URL trifft, wird er automatisch zu einer anderen URL umgeleitet, die auch in der Datenbank gespeichert ist.

+0

Was ist der Grund dafür, dass .htaccess nicht verwendet wird? Wenn Sie die Site auf einem Apache-Webserver hosten, dann würde ich das verwenden oder das Neuschreiben im vhost einrichten. Leiten Sie alle Anrufe an /index.php um und haben Sie einen Router, der das Routing übernimmt. Wenn Sie einen anderen Webserver verwenden, sehen Sie in der Dokumentation nach, wie Sie "URL-Rewrite" auf diesem Server verwenden, um das Gleiche zu tun. PHP kann das Umschreiben nicht alleine durchführen. (es sei denn, Sie verwenden den internen Webserver von PHP, dann ist das etwas anders). Es ist der Webserver, der die Anfrage entgegennimmt und entscheidet, was zu tun ist. –

+0

Ich habe kein Problem mit .htaccess. Wenn ich damit eine gute Lösung bekomme, geht es mir gut. Das Hauptproblem ist meine URLs automatisch erstellen und es wächst. wie kann ich dann .htaccess verwenden? – gojobs

+0

Ich möchte, dass es eine Überprüfung geben muss, die meine URL auf eine andere URL umleitet, die in derselben Zeile in der Datenbank gespeichert ist. so etwas ist bemerkenswert. – gojobs

0

Soweit ich Ihre Frage verstehe, müssen Sie zuerst. Htaccess für SEO freundliche URL. Nun ist beispielsweise www.example.com/jobs.php?id=123456 eine URL und Sie möchten den Benutzer zu www.example.com/this-is-my-first-job umleiten, der in der Datenbank gespeichert ist. Lassen Sie sehen,

if(isset($_GET['id'])){ 
    //get the slug from database against id 
    header("Location: www.example.com/".$slug); 
} 

Wie die ID von Slug bekommen?

Schreib in .htaccess

Options +FollowSymlinks 
RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule (.*)$ index.php?slug=$1 [QSA,NC,L] 

jetzt in PHP

if(isset($_GET['slug'])){ 
    //get the id from database against slug 
    }