聚合javascript文件的PHP文件正在添加不可打印的字符

时间:2014-02-07 00:07:49

标签: phpmyadmin apache2 filesystems php

我正在尝试在我们的debian服务器上安装phpMyAdmin。我试过直接通过wget下载它,下载到我的Mac然后通过FTP上传,两次都得到同样的错误......

当我尝试在网络浏览器(Safari,Chrome或IE 9)中加载页面时,我在检查器(或控制台,具体取决于浏览器)中出现空白屏幕和错误。

SyntaxError:无效字符' \ u0031' get_scripts.js.php:19111

之后我得到了几个javascript错误,这些错误与javascript文件没有加载有关。之前我曾经看到过这个错误,问题是由于行结尾不正确..我尝试了几种不同的安装方法..所以我不能看到满足是一个问题..如果这有问题linux盒子的行尾错误,我不能看到我是第一个发帖的人。

有什么想法吗?

更新:我们做了很多测试.. get_scripts.js.php文件将通过查询字符串提供给它的js文件聚合到一个文档中。在输出get_scripts.js.php文件之后,在文件末尾生成大约12个不可打印的字符。当我们从输出中删除标题时,字符数较少,但仍为1.

在这里,它变得奇怪。当我注释掉read file()函数(即输出javascript)时,字符保留,当我剪切分隔js文件的新行时,字符保持不变。当我切断它们时,它们会消失。

我感觉这是与Web服务器,PHP或文件系统相关的,但它不会发生在主机上的任何其他页面上....

现在有什么想法吗?

2 个答案:

答案 0 :(得分:8)

我之前见过这个,这是一个问题,关于Web服务器如何在系统上读取文件的mime类型而不是客户端浏览器如何接受它。

例如,如果/etc/mime.types将js文件列为“application / javascript”,并且您要发送“text / x-javascript”标题,则会出现二进制转换问题,因此奇数字符将出现在你的文件。

尝试更改/etc/mime.types以包含(或替换)javascript为text / x-javascript。如果该工作不尝试添加apache类型。

答案 1 :(得分:-2)

我刚刚遇到phpmyadmin 4 + debian 7的问题。更改/etc/mime.types没有帮助,主要是因为js / get_scripts.js.php覆盖了标题。

我从libapache2-mod-php5filter转到了libapache2-mod-php5,它可以立即运行。

只需输入apt-get install libapache2-mod-php5即可。它将自动卸载php5filter并重启apache。