jam*_*and 3 mod-rewrite apache-2.2
哦,.htaccess 让我头疼。
所以,我有一个网页,它有一个漂亮的 URL foo.com/radio/jobs虽然实际上住在 foo.com/content/directory_jobs.php/?section=radio
我使用 .htaccess 行...
RewriteRule ^(radio|tv|magazines|newspapers)/jobs$ /content/directory_jobs.php?section=$1
Run Code Online (Sandbox Code Playgroud)
同一页面有一个可选的 ?pages= 查询字符串 - 因此您可以访问foo.com/radio/jobs?page=2并查看第二页。
然而,上面的 .htaccess 行没有添加这个 pages 变量:结果是底层的 PHP 脚本没有看到“pages”变量。
我可以调整上面的 .htaccess 行以确保我确实传递了“pages”变量(如果存在)?或者我必须为这样的每个页面设置两条 .htaccess 行吗?
只需添加 QSA(查询字符串附加)标志
RewriteRule ^(radio|tv|magazines|newspapers)/jobs$ /content/directory_jobs.php?section=$1 [QSA]
Run Code Online (Sandbox Code Playgroud)
例子;
使用 QSA 标志 /radio/jobs -> /content/directory_jobs.php?section=jobs
/radio/jobs?foo=bar -> /content/directory_jobs.php?section=jobs&foo=bar
/radio/jobs?foo=bar&boo= bosh -> /content/directory_jobs.php?section=jobs&foo=bar&boo=bosh
mod_rewrite 会判断是否需要添加 ? 或 $ so 用于重写规则
重写规则 ^([az]+)$ /$1.php [QSA]
/something?foo=bar -> /something.php?foo=bar
| 归档时间: |
|
| 查看次数: |
1253 次 |
| 最近记录: |