Javascript 从URL中的目录路径重定向到特定页面

Javascript 从URL中的目录路径重定向到特定页面,javascript,jquery,Javascript,Jquery,我有abc目录,里面有两个文件。一个是login.php,另一个是index.php。我有路径localhost/abc重定向到index.php,但我想重定向到login.php。当访问localhost/abc时,它会重定向到index.php //index.php //javascript method if( !checkLogin() ){ window.location.href = 'login.php' } //php way if( !checkLogin() ){

我有abc目录,里面有两个文件。一个是login.php,另一个是index.php。我有路径localhost/abc重定向到index.php,但我想重定向到login.php。

当访问localhost/abc时,它会重定向到index.php

//index.php
//javascript method
if( !checkLogin() ){
    window.location.href = 'login.php'
}
//php way
if( !checkLogin() ){
    header('location: login.php');
}

未登录时,checkLogin return false。

默认情况下,页面将始终打开目录中的
index.php
文件。这是默认行为。您可以通过更改服务器设置来更改它,但这取决于您使用的服务器,例如Apache IIS等

假设您正在使用Apache。。。您需要在apache文件夹中的
httpd.config
文件中更改以下行

<IfModule dir_module>
    DirectoryIndex index.php index.php3 index.html index.htm
</IfModule>
希望这有助于…

如果可以使用PHP,为什么要使用javascript重定向?
  • 如果禁用javascript,则重定向将不起作用
  • 在某些情况下,您必须对url进行编码
  • HTTP比JavaScript更适合这项工作
  • 搜索引擎紧随其后
  • 您可以说明它是否是永久性的
用PHP重定向302


header函数将原始header数据发送到客户端web浏览器,在这种情况下,发送一个302状态代码,指示浏览器重定向到给定位置。但它在搜索引擎优化方面并没有那么好。

document.location.href='/path/to/login.php'
在这种情况下,它将是
window.location.replace
而不是
window.location.href
,进一步:
<script type="text/javascript" language="javascript">
    window.location = 'login.php';
</script>
//write this in index.php
if(isset($_SESSION["isLoggedin"]) && $_SESSION["isLoggedin"]==true){ //if user has logged in and session variable has been set.
    header("Location:login.php"); //this will redirect the page to login.php
}
<? header('Location: /login.php'); ?>