以下是我的.htaccess
文件的一部分:
htaccess的:
RewriteRule ^([a-z0-9A-Z_-]+)$ /article/index.php?title=$1 [L]
但问题是当title
为空时,它不会显示http://www.domain.com/index.php
的内容。我甚至无法在不抛出错误的情况下链接到http://www.domain.com/
。
PHP:http://www.domain.com/article/index.php
<?php
if(!empty($_GET['title']))
{
$a = mysql_query("SELECT * FROM `articles` WHERE `title` = '".mysql_real_escape_string($_GET['title'])."'");
}
else
{
$a = mysql_query("SELECT * FROM `articles` WHERE `id` = '".mysql_real_escape_string($_GET['id'])."'");
}
$b = mysql_fetch_assoc($a) or mysql_error();
?>
答案 0 :(得分:0)
你几乎有两个选择:
1。使用此规则:如果命中主页,则title
参数将为空(因此您必须以某种方式处理此时刻 - 相应地调整您的PHP代码。)
RewriteRule ^([a-z0-9A-Z_-]*)$ /article/index.php?title=$1 [QSA,L]
2。使用针对主页/网站root hit的特定规则(在之前添加 >当前规则):
RewriteRule ^$ /article/index.php?title=home [QSA,L]
title=home
表示它对网站root有效(您可以将home
更改为您想要的任何内容。)