SEO Url Yönlendirme / Veritabanı Yönetilen Linkleri Kullanarak Rewrite

2 Cevap php

I have searched left and right. And i am trying to find a script or a method on how I can store links in database and use them for redirection.

Bu bir e-ticaret projesi ve ben veritabanından Ürün ve sistem URL yönetmek için bir şey arıyorum.

Manyeto doz gibi benzer bir şey.

Etki sonra temelde bir şey domain.com/demo/12/my_iphone gibi söylemek

şimdi demo/12/my_iphone querry için veritabanına gönderilecek ve veritabanlarında productlisting.php? aranacak = iPhone'lar olabilecek bir hedef URL olacak

böylece kullanıcı bağlantı domain.com/demo/12/my_iphone görürsünüz ama aslında o productlisting.php görmeye olacak? = iphone aranacak

temelde demo/12/my_iphone = productlisting.php? aranacak = iPhone'lar

ve yarın kullanıcı o sadece bu yüzden veritabanında güncelleyecektir basit formu kullanarak yapabilirsiniz demo/12/myiphone için demo/12/my_iphone düzenlemek istiyorsanız.

I bu nasıl elde edebilirsiniz?

2 Cevap

PHP ile birlikte apache mod_rewrite kullanın.

1) a. Htaccess dosyası yapın ve bir klasöre koyun, demek www.yourdomain.com / a / .htaccess

Options +FollowSymLinks -Indexes
RewriteEngine On
RewriteRule .* index.php?%{QUERY_STRING} [L]

2) Tüm istekleri işleyen bir index.php oluşturun

(psaudo-code)

<?php
/**
 * This script is simply parsing the url used, /demo/12/my_iphone
 */
require_once('library.php');
$request_uri = $_SERVER['REQUEST_URI'];

// parse $request_uri by splitting on slashes / 
$params = my_parse_function($request_uri); // <= parse_url() is helpful here!

$param1 = $params[0]; // "demo"
$param2 = $params[1]; // "12";       
$param3 = $params[2]; // "my_iphone";

// db-lookup based on the request
$url = fetchUrlFromDB($param1, $param2, $param3);
if($url){
    header('Location: '.$url); // $url = "productlisting.php?searchstring=iphones"
    die();
}
else{
     echo "invalid parameters";
}
?>

O gelirse böyle bir çözüm programı için zor olmayacaktır. $ _SERVER ['REQUEST_URI'] adlı uri kapmak ve yolunu kapmak için parse_url bunu geçebileceği. Sonra veritabanına karşı sorgu yolunu kullanın.