如何SSI包括变量文件名

时间:2017-11-28 17:18:06

标签: javascript html apache ssi

我最近发现了SSI并且不完全知道它是如何工作的。我已经写了这个javascript代码,如下所示,它应该将链接的末尾变成文本文件名(它做得很好)。然后转义所需的所有字符都被转义,代码如下。

var path = window.location.pathname;
var page = path.split("/").pop();
var res = path.replace(".html", ".txt");
var res = res.replace("/Iliad/", "");
console.log(res);
element = document.getElementById('book');
element.innerHTML = "\<\!\-\-\#include virtual="+res+" \-\-\>";

根据控制台(检查元素),<!--#include virtual=1.txt -->完全正确地添加到html div容器的innerHTML中,但它不包含它引用的.txt文件。我搜索过互联网,无法找到解决方案。有什么我做错了吗?如果是这样,我该如何做到这一点。谢谢!

Inspect Element of my Site

2 个答案:

答案 0 :(得分:1)

服务器端包含在服务器上处理(因此名称),只要服务器配置正确。

修改浏览器中的数据(离开服务器很久之后)无法触发服务器上SSI的处理。

请转而使用AjaxDOM manipulation

答案 1 :(得分:0)

感谢@Quentin快速回答。在被告知确切的SSI意图后,我寻找了另一种解决方案。

This为我工作!我修改了代码如下......

var request = new XMLHttpRequest();
request.open('GET', res, false);
request.send();
var textfileContent = request.responseText;
element = document.getElementById('book');
element.innerHTML = textfileContent;

希望这有助于其他任何人!

相关问题