Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将html显示为文本?_Javascript_Html_Css_Apache - Fatal编程技术网

Javascript 如何将html显示为文本?

Javascript 如何将html显示为文本?,javascript,html,css,apache,Javascript,Html,Css,Apache,我有一个网站,允许任何人上传任何他们想上传到我的网站,我一直有人上传钓鱼html的问题,我想显示的html页面作为文本,而不是加载它,但我不知道我会怎么做?我认为这是可以在htaccess中完成的,但我找不到任何有关它的信息。我正在使用Ubuntu和Apache。当有人上传html文件时,我需要自动执行该过程,我只需要在一个目录中禁用html,并且该目录不与任何应该正确显示的html文件共享。可能使用此功能: function htmlEntities(str) { return Str

我有一个网站,允许任何人上传任何他们想上传到我的网站,我一直有人上传钓鱼html的问题,我想显示的html页面作为文本,而不是加载它,但我不知道我会怎么做?我认为这是可以在htaccess中完成的,但我找不到任何有关它的信息。我正在使用Ubuntu和Apache。当有人上传html文件时,我需要自动执行该过程,我只需要在一个目录中禁用html,并且该目录不与任何应该正确显示的html文件共享。

可能使用此功能:

function htmlEntities(str) {
    return String(str).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;');
}
函数属性(str){
返回字符串(str).replace(//&/g,“&;”).replace(//g,”).replace(//“/g,”);
}

来源:

您可以将其与
内容类型一起发送:text/plain;字符集=UTF-8
标题

.htaccess

AddType text/plain html
方法1 在网站的根目录下创建.htaccess文件并添加以下行:

[Apache2@Ubuntu/Debian:使用此指令]

AddType应用程序/plain.html.htm

以上内容将截取并处理目录中的任何html页面,以作为纯文本文件运行

方法2 或者,您可以运行一个单独的进程,该进程接受传入的html页面,并在运行时执行到纯文本的转换。字符串替换方法就可以了。


<xmp> 
 user content here
<xmp>
此处的用户内容
元素已经过时,但行为是在HTML5中定义的。
所有现代和非现代浏览器都支持它

或者,如果您喜欢有效的HTML,请执行以下操作:

<body>
<script type=text/plain style=display:block>
 user content here 
</script>

此处的用户内容

您必须确保用户内容不包含快速和讨厌的
?把它放在一个PRE中,每一个早在HTML2.0就被弃用,并在3.2中被废弃。它现在只作为过时元素列出。在浏览器中“它可以工作”只是为了向后兼容,没有其他原因。可在一小时内移除,无需通知。不要这样做!我很清楚反对意见,也不坚持这是个好主意。请随意使用
。但从HTML规范第15.3节“实现要求”中可以看出:“用户代理必须以与pre元素在语义和呈现方面等效的方式处理
xmp
元素……”所有浏览器都这样做,并且浏览器不能取消对
xmp
的支持。另外,解析部分中的
xmp
有几个要求,不能将其拖到后面,但是
仍然是过时的--不再是不推荐的--并且可以在任何时候删除,正如我所说,并且最终将被删除。嗯,
实际上是从HTML标准中删除的(对于作者和实施者)。没有人会认真期待
等属性,或者像
align=
单元格填充=
bgcolor=
框架边框=
,等等。任何HTML标准都从未包含
从一开始,除了它在HTML5中的定义。将它放在那里的唯一目的是宣布它过时并准备删除。原因:向后兼容过去(和现在)使用它的许多人.Browser供应商现在可以指出在小时/天/周/年内删除它的原因。您不能删除不存在的内容,因此无法删除它的定义。