我对此网址有疑问,我想知道如何将其重写为htaccess。我对这些东西很陌生,所以我很好奇如何做到这一点,例如这个网址: 网站/?页=在线
并将其重写为,例如: 网站/网页/网上
或此网址: ?网站/网页=帐户并隐藏= X
例如:网站/网页/帐户/隐藏/ X
我使用这个PHP脚本将页面包含在一个HTML文档中:
<?php
if (empty($_GET))
{
include 'pages/index.php';
} else {
if (!file_exists('pages/' . $_GET['page'] . '.php' ))
{
header("Location: /");
} else {
include 'pages/' . $_GET['page'] . '.php';
}
}
?>
答案 0 :(得分:0)
你可以这样做。
.htaccess文件
RewriteEngine On
RewriteRule (.*) control.php [L]
这表示将每个请求发送到您的服务器并将其发送到control.php文件中。然后在control.php中我们处理所有目录的获取。你可能想要一些后退,例如没有GET
请求;它应该转到根,404,403吗?
control.php
<?php
$parts = '';
foreach($_GET as $key => $directories) {
$parts .= $key . '/' . $directories . '/';
}
header('Location: ' . '/' . $parts);
?>
答案 1 :(得分:0)
在.htaccess文件中
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Match SITE/page/account/hide/x, etc
RewriteRule ^/?page/([^\.*]+)/([^\.*]+)/([^\.*]+)?$ index.php?page=$1&$2=$3 [L,QSA]
# Match /SITE/page/online etc.
RewriteRule ^/?page/([^\.*]+)/?$ index.php?page=$1 [L,QSA]