我正在使用 PHP 开发网站.我的 .htaccess 有这个重写规则:
I'm developing a website using PHP. My .htaccess has this rewrite rule:
RewriteEngine On RewriteRule ^book/([^/]*).html$ book.php?title=$1 [L]所以 URL 看起来像:www.example/book.php?title=title-of-the-book变成 www.example/book/title-of-the-book.html
So the URL that looked like: www.example/book.php?title=title-of-the-book turns into www.example/book/title-of-the-book.html
在特定情况下,从站点的另一个页面,我想链接到这样的页面:www.example/book.php?title=title-of-the-book?myfield=1然后变成www.example/book/title-of-the-book.html?myfield=1.html
In a specific case, from another page in the site, I want to link to pages like this: www.example/book.php?title=title-of-the-book?myfield=1 that then turns into www.example/book/title-of-the-book.html?myfield=1.html
在那里,我无法使用通常的 PHP 方式访问 GET 变量
Being ther, I cannot acces the GET variables using the usual PHP way
$variable = $_GET['myfield']我该如何解决这个问题?
How do I solve this problem?
推荐答案Specify [QSA] (Query string append) 这样你就可以在你的 url 后面传递一个查询字符串.
Specify [QSA] (Query string append) so you may pass a query string after your url.
RewriteEngine On RewriteRule ^book/([^/]*).html$ book.php?title=$1 [QSA,L]PS:你为什么在这里使用 * ?+ 不是更适合吗?
PS: Why are you using * here? Wouldn't + suit better?
更多推荐
使用 PHP + .htaccess 访问 GET 变量
发布评论