我正在做一个网站,现在我在一个免费的主机服务中托管它只是为了做一些测试。
我遇到了一个我在localhost中没有的问题。
问题是:我可以成功访问我的主页,但每当我尝试访问辅助页面时,我都会收到404错误" http://error404.000webhost.com/? "
我不明白为什么我会收到此错误,在localhost中一切正常,所以我会将我认为可能与此问题相关的代码放在下面。
非常欢迎任何帮助。
我用我的查询字符串在index.php文件中调用我的Home()函数:
function Home(){
$url = $_GET['url'];
$url = explode('/', $url);
$url[0] = ($url[0] == NULL ? 'index' : $url[0]);
if(file_exists('inc/'.$url[0].'.php')){
require_once('inc/'.$url[0].'.php');
}
elseif(file_exists($url[0].'/'.$url[1].'/'.$url[2].'.php')){
require_once($url[0].'/'.$url[1].'/'.$url[2].'.php');
}
elseif(file_exists($url[0].'/'.$url[1].'.php')){
require_once($url[0].'/'.$url[1].'.php');
}
else{
require_once('inc/404.php');
}
}
我的htaccess文件:
RewriteBase / (we need to use this in 1st htaccess line in the host Im testing)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1
我如何访问我的secundary页面:(在这种情况下,我的老师/文件secundary页面)
<li class="item_menu">
<a href="javascript:void(0);">Teachers</span></a>
<ul>
<li>
<a href="<?php echo BASE;?>/teachers/documents"> Documents</a>
</li>
</ul>
</li>
我的BASE变量:
在localhost:define(&#39; BASE&#39;,&#39; htp:// localhost / website&#39;);
当我在主机服务中托管我的项目时:define('BASE','http://myhostexample.org');