2

我知道这已被广泛讨论,但我似乎无法找到我想做的事情的答案。我已经阅读了所有堆栈文章,并查看了谷歌显示的不同方法以及我尝试过的无数搜索字符串。

我看过文章谈论使 PHP 可读 URL 变得漂亮,但没有(我能理解)使 PHP 可读的漂亮。

我看过文章谈论为每个“用户”创建一个 htaccess 条目(在下面的例子中),但没有几行解决方案可以格式化我需要的方式(再次,在下面的例子中)。

有人可以提供一个模板:

1) 发送一个看起来像https://mysite.com/users/sampleUserName的漂亮 URL到https://mysite.com/users.php?username=sampleUserName

2) 如果有必要,让 users.php 处理漂亮的 url。

我什至不完全确定我在问什么(因为我不知道这是如何工作的,所以这个问题),所以如果有人能更准确地读懂我的想法,我将不胜感激。哈哈

底线:我希望人们能够输入漂亮的 URL 并让 PHP 能够处理它。

提前谢谢了!

4

2 回答 2

2

您需要使用 Apache 的mod_rewrite.

您需要在.htaccess文件中添加以下行:

RewriteEngine On
RewriteRule   ^[a-zA-Z0-9]/?$    users.php?username=$1    [NC,L]

如果你想了解更多,这里有一篇关于初学者 URL 重写的好文章。

于 2012-11-18T20:30:55.400 回答
1

为什么要重新发明轮子并编写自己的 URL 重写解决方案?使用一个框架(您不必使用它的其余部分,只需使用路由库)。这是一个使用非常轻量级的 Silex 微框架的示例:

require_once __DIR__.'/../vendor/autoload.php'; 

$app = new Silex\Application(); 

$app->get('/hello/{name}', function($name) use($app) { 
    return 'Hello '.$app->escape($name); 
}); 

$app->run(); 

资料来源:http ://silex.sensiolabs.org/

于 2012-11-18T20:34:25.147 回答