Php 有人能解释一下我怎么做url重写吗

Php 有人能解释一下我怎么做url重写吗,php,html,Php,Html,我正在尝试创建一个论坛,人们在其中拥有他们的帐户,而我似乎不理解这个概念 在我们创建了以用户命名的文件之后,我们是创建一个新的PHP文件并在其中写入所有代码,还是其他什么东西 我不能很好地理解它 您正在寻找一个数据库。您不需要为每个用户编写一个php文件,而是一个从数据库中获取所需信息并显示它们的php文件 请记住,每次复制代码时,都会出现严重错误,您应该后退一步,找到更好的解决方案。数据库允许您执行所需操作。在虚拟主机或.htaccess文件中使用mod_rewrite,您可以执行以下操作:

我正在尝试创建一个论坛,人们在其中拥有他们的帐户,而我似乎不理解这个概念

在我们创建了以用户命名的文件之后,我们是创建一个新的PHP文件并在其中写入所有代码,还是其他什么东西

我不能很好地理解它

您正在寻找一个数据库。您不需要为每个用户编写一个php文件,而是一个从数据库中获取所需信息并显示它们的php文件

请记住,每次复制代码时,都会出现严重错误,您应该后退一步,找到更好的解决方案。数据库允许您执行所需操作。

在虚拟主机或.htaccess文件中使用mod_rewrite,您可以执行以下操作:

RewriteEngine On
RewriteRule ^([^/]*)$ /index.php?page=$1 [L]
这将改写为

要帮助生成重写规则,请查看


这个答案假设您通过索引文件路由请求。

您需要的是数据库和URL重写的组合

数据库

数据库用于存储大量数据。如果您使用的是类似PHP的数据库,则可以从PHP获取并将内容放入数据库中。这可能是最容易了解的方法。关于连接到数据库以及获取和将数据放入其中,有许多可用的指南。解决这个问题的方法是,您不需要为每个用户都提供一个PHP文件,您只需要一个,在其中,您不存储来自用户的任何数据,您只需要与数据库交互

快速的谷歌搜索应该会弹出数千条关于如何连接MySQL数据库的指南。请确保您遵循使用MySQLi或PDO的指南,这两个驱动程序比标准MySQL驱动程序好得多。您将看到函数之间的差异,使用MySQLi,您将拥有名为MySQLi\u connect的函数。我之所以这么说,是因为MySQL驱动程序在最新版本的PHP中不受欢迎,而且它有一些安全问题,可以通过MySQLi或PDO轻松避免

URL重写

让您的URL尽可能简单http://www.example.com/user/deniz_zoeteman,甚至http://www.example.com/deniz_zoeteman,您需要进行URL重写。现在这在很大程度上取决于您使用的是什么web服务器,但如果您是托管公司的,很有可能是Apache。您可以在配置文件中使用如下示例:

RewriteEngine on
RewriteRule ^/(.*)$ /user.php?user=$1 [L] 
也有很多关于URL重写的指南,例如。如果使用上面的示例,您可以在PHP中获得URL中的用户名,如下所示:

$username = $_GET['user'];

大多数情况下,它是$\u GET和URL重写的组合。