在不更改 url 的情况下访问脚本

Posted

技术标签:

【中文标题】在不更改 url 的情况下访问脚本【英文标题】:Access script without changing url 【发布时间】:2015-10-17 15:16:18 【问题描述】:

来自http://localhost/ 我想访问http://localhost/1.php

我怎样才能在不改变url的情况下访问浏览器中的1.php文件?

【问题讨论】:

是否要将1.php的内容导入index.php?还是重写网址? 如果可能,重写 url。 使用ajax请求将文件内容加载到当前页面 使用重写。 ***.com/questions/19322345/… 【参考方案1】:

在您的 .htaccess 文件中使用 DirectoryIndex 1.php

【讨论】:

我有多个文件,我不想让我的 1.php 成为索引文件。 @Lurrdock 你能给我们一些其他的例子,以便我们了解你想要什么吗? 我只想在不更改 url 的情况下访问该文件。我该如何解释?当我想从localhost单击并打开1.php文件时,我想打开它并且URL仍然是localhost【参考方案2】:

您可以使用 AJAX 获取不同 PHP 文件的内容并将其显示在您的登录页面上

【讨论】:

最简单的方法是使用 jQuery javascript 库。然后你可以做这样的事情:$.get('1.php').done(function(data) $('#content').html(data); );我假设你的 HTML 上有一个 ID 为“内容”的元素【参考方案3】:

这里是一个简单的例子: index.html 页面

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
    <title>Ajax example</title>
    <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    <script src="https://code.jquery.com/jquery-1.11.3.min.js" type="text/javascript"></script>
    <script>
        $(document).ready(function()
            $("#page1").click(function()
                $('#result').load('page1.html');
            ); 

            $("#page2").click(function()
                $('#result').load('page2.html');
            );
            //and so on
        );
    </script>
</head>

<body>
    <ul>
        <li><a id="page1" href="#">One</a></li>
        <li><a id="page2" href="#">Two</a></li>
        <li><a id="page3" href="#">Three</a></li>
    </ul>
        <div id="result" style="clear:both;">
    </div>
</body>

</html>

假设你有 page1.html 的内容

<h1>Hi this is page1</h1>

点击链接“one”将用page1.html等内容填充div

使用这种类型的实现,您应该在没有标题和元数据的情况下工厂化其他页面。

【讨论】:

以上是关于在不更改 url 的情况下访问脚本的主要内容,如果未能解决你的问题,请参考以下文章

如何在不更改 javascript 中的 URL 的情况下重新加载当前页面一次?

如何在不重新加载页面的情况下更改 URL?

如何在不更改浏览器历史记录的情况下更改 url

如何在不更改页面的情况下更改内容(非散列 URL)?

如何在不重新加载页面的情况下更改页面 url

如何在不更改当前 URL 的情况下打开新窗口?