1
我无法让我的mod_rewrite工作,以便链接从http://domain.com/page?home.php
http://domain.com/home
。PHP包括页面与mod_rewrite隐藏获取变量问题
当输入http://domain.com/
时,主页是正确包含的。
当输入http://domain.com/404
或http://domain.com/anythinghere
正确包含404页面。
当进入http://domain.com/home
一个错误500上升,我得到这个错误:File does not exist: /var/www/html/domain/Dev/home
为什么这个不行?
我的项目如下:
目录结构:
Dev/
.htaccess
index.php
menu.php
pages/
404.php
home.php
resources/
css/
core.css
fonts/
的的.htaccess:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(\d+)*$ ./index.php?page=$1
在index.php:
<?php
if (!isset($_GET['page']))
$_GET['page'] = 'home';
$pages = array('home');
$page = $_GET['page'];
include('menu.php');
if(in_array($page, $pages))
{
include('pages/' . $page . '.php');
}
else
{
include('pages/404.php');
}
?>
</body>
</html>
你确实是正确的谢谢,虽然我把一点infin /index.php ...因为我不工作在根文件夹中,但同样相同。 RewriteRule ^([^ /] +)$ ./index.php?page=$1 [L] – user3828657