htaccess mod_rewrite q,让用户看到不存在的页面

时间:2013-07-11 22:16:00

标签: .htaccess

所以我的.htaccess中有以下内容用于我的mod_rewrite。

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)$ /?a=$1 [L]
RewriteRule ^product/([^/]*)$ /product.php?p=$1 [L]

它让我有/帮助而不是.index.php?a =帮助但问题是,如果有人访问/ blahblah没有给出错误,它只显示一个空白的索引页面上没有任何内容,除了徽标,侧边栏和空白内容空间。

任何想法如何制止这个?我会使用php if()但这看起来很麻烦,因为每次添加页面时我都必须这样做。有没有.htaccess?

1 个答案:

答案 0 :(得分:1)

你必须在这里使用php。您的index.php会读取$_GET['a']变量并确定要呈现的内容。但是mod_rewrite对index.php文件中不可渲染内容的内容或内容一无所知。

实施将取决于您index.php的编写方式。如果找不到“a”参数表示的页面,则最多index.php返回404结果。在htaccess中无法做到这一点。