php url重写 转换,用PHP重写URL

小编典典

您基本上可以通过以下两种方式执行此操作:

.htaccess路由与mod_rewrite

.htaccess在您的根文件夹中添加一个名为的文件,并添加以下内容:

RewriteEngine on

RewriteRule ^/?Some-text-goes-here/([0-9]+)$ /picture.php?id=$1

这将告诉Apache为该文件夹启用mod_rewrite,并且如果询问它与正则表达式匹配的URL,它将在 内部

将其重写为所需的内容,而最终用户看不到它。简单但不灵活,因此,如果您需要更多功能,请执行以下操作:

PHP路线

将以下内容放在您的.htaccess文件中:(请注意斜杠)

FallbackResource /index.php

这将告诉它为您index.php通常无法在您的站点中找到的所有文件运行。然后,您可以在其中例如:

$path = ltrim($_SERVER['REQUEST_URI'], '/'); // Trim leading slash(es)

$elements = explode('/', $path); // Split path on slashes

if(empty($elements[0])) { // No path elements means home

ShowHomepage();

} else switch(array_shift($elements)) // Pop off first item and switch

{

case 'Some-text-goes-here':

ShowPicture($elements); // passes rest of parameters to internal function

break;

case 'more':

...

default:

header('HTTP/1.1 404 Not Found');

Show404Error();

}

这是大型站点和CMS系统执行此操作的方式,因为它在解析URL,配置和数据库相关的URL等方面提供了更大的灵活性。对于零星使用,使用硬编码的重写规则.htaccess会很好。

2020-05-26

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值