简介
URL 重写是一种用于转换复杂、将可能很长的 URL 转换为更加用户友好和可读的格式。在本文中,我们将探讨如何使用两种不同的方法在 PHP 中实现 URL 重写:.htaccess 路由和 PHP 路由。
使用 mod_rewrite 的 .htaccess 路由
此方法涉及将 .htaccess 文件添加到根目录并配置 Apache Web 服务器以使用 mod_rewrite。下面是一个 RewriteRule 示例:
RewriteEngine on RewriteRule ^/?Some-text-goes-here/([0-9]+)$ /picture.php?id=
此规则指示 Web 服务器匹配模式“Some-text-goes-here/
PHP 路由
另一种方法是使用 PHP 来处理 URL 重写。这涉及到在 .htaccess 中设置一个“FallbackResource”:
FallbackResource /index.php
此配置告诉服务器,如果请求的文件不存在,则将所有请求定向到 index.php 文件。在index.php中,您可以实现自己的URL解析逻辑:
$path = ltrim($_SERVER['REQUEST_URI'], '/'); $elements = explode('/', $path); if (empty($elements[0])) { ShowHomepage(); } else { switch (array_shift($elements)) { case 'Some-text-goes-here': ShowPicture($elements); break; case 'more': ... default: header('HTTP/1.1 404 Not Found'); Show404Error(); } }
这种技术可以使URL解析更加灵活,并支持数据库驱动和条件URL。
以上是如何使用'.htaccess”或 PHP 内置函数在 PHP 中实现 URL 重写?的详细内容。更多信息请关注PHP中文网其他相关文章!