从url获取值而不在PHP中显示页面

时间:2012-09-21 19:40:50

标签: php url mod-rewrite

我需要在没有服务器显示页面的情况下从URL获取值。例如,如果有人去了:

www.example.com/123456

我想获得“123456”并重定向到www.example.com。

www.example.com/123456不存在。

这是否可以通过mod重写和PHP以某种方式实现?

2 个答案:

答案 0 :(得分:1)

你可以这样做:

<?php
$data = $_GET['data'];
//Do something with the data
header('Location: http://www.example.com/');
?>

答案 1 :(得分:1)

例如在你的.htaccess文件中(假定LAMP使用mod_rewrite):

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

和index.php:

<?php
    $url = $_SERVER['REQUEST_URI'];
    // will output: /123456
    echo $url;
?>

此设置会将所有不指向实际文件或目录的请求重定向到index.php。