.htaccess 替换(重写)PHP URL 中的 $_GET 变量

2022-01-04 00:00:00 variables php .htaccess rewrite

我有一个类似于 example.com/index.php?p=test 的 URL,以便 PHP 将使用 $_GET['p'] 加载测试变量.URL 已经可以简化为 example.com?p=test;但是,我希望在我的 .htaccess 中将其简化为 site.com/test.我该怎么做?

I have a URL that will be something like example.com/index.php?p=test so that the PHP will load the test variable using $_GET['p']. The URL can already be simplified to example.com?p=test; however, I wish to simplify this in my .htaccess to site.com/test. How would i go about doing this?

推荐答案

将以下内容放入您的 .htaccess 文件中:

Place the following in your .htaccess file:

RewriteEngine on

# The two lines below allow access to existing files on your server, bypassing
# the rewrite

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule (.*) index.php?p=$1 [QSA]

然后您可以从 example.com/whatever 访问 whatever,如下所示:

You can then access whatever from example.com/whatever like the following:

$value = $_GET['p']; // "whatever"

相关文章