【问题标题】:Wordpress tinymce.js being parsed as PHP?Wordpress tinymce.js 被解析为 PHP?
【发布时间】:2012-06-16 01:58:14
【问题描述】:

我的 WordPress“编辑帖子”页面中的 TinyMCE 编辑器似乎坏了。 Chrome 控制台显示:

Resource interpreted as Script but transferred with MIME type text/html: "http://mysite.com/wp-includes/js/tinymce/langs/wp-langs-en.js?ver=349-20805". post.php:62
Resource interpreted as Script but transferred with MIME type text/html: "http://mysite.com/wp-includes/js/tinymce/tiny_mce.js?ver=349-20805". post.php:62
Uncaught SyntaxError: Unexpected token <          tiny_mce.js:1
Uncaught ReferenceError: tinyMCE is not defined   wp-langs-en.js:1
Uncaught ReferenceError: tinymce is not defined   post.php:1180

如果我在 Chrome 开发者工具中检查 tinymce.js,我会看到以下响应标头:

Cache-Control:public, must-revalidate, proxy-revalidate
Connection:close
Content-Type:text/html
Date:Sat, 16 Jun 2012 01:40:42 GMT
Pragma:public
Server:Apache
Transfer-Encoding:chunked
Vary:Accept-Encoding
X-Powered-By:PHP/5.2.17, W3 Total Cache/0.9.2.4

这个回应:

<br />
<b>Parse error</b>:  syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in <b>/home/mysite/public_html/wp-includes/js/tinymce/tiny_mce.js</b> on line <b>1</b><br />

正在正确检索和执行各种其他 .js 文件。关闭 W3TC 没有任何区别。 Firefox 也存在问题。这个问题似乎突然出现了。我不知道我已更改任何内容,甚至没有更新或安装/卸载插件。

提前致谢。

【问题讨论】:

  • 你确定你没有使用 php 在某处包含那个 js 文件吗? grep -r -n -I --color /home/mysite/public_html/ tiny_mce.js,还是整个目录?还要检查 http conf 和该文件夹中的任何 .htaccess 或其任何父级是否没有将该文件/文件夹视为 php

标签: wordpress tinymce


【解决方案1】:

除非 PHP 正在处理 .js 文件请求,否则不会发生这种情况。

检查您的 Apache2 conf 文件并检查 conf.d 文件夹中的所有 conf.d 文件。还要检查您的 .htaccess 文件。在这些文件中查找如下内容:

AddHandler application/x-httpd-php .js

它可能出现在这样的块中:

<FilesMatch ".js$">
AddHandler application/x-httpd-php .js
php_value default_mimetype "text/javascript"
</FilesMatch>

一些 .htaccess 和 apache 配置教程建议使用 PHP 来处理 .js 文件,因为它会让你做一些技巧。最常见的原因是调用 PHP GZIP 文件来 ZIP 压缩 JS 文件。不幸的是,使用 php 处理 tiny_mce.js 似乎破坏了 Wordpress。 PHP 在 tiny_mce.js 文件中出现问题——可能是因为它被缩小了?

我遇到了这个确切的问题,不得不从我的配置中删除 .js 文件的 php 处理程序。实际上不需要它,因为我的 Apache 被配置为自己进行压缩。我没有调用 PHP 文件来执行 gzip。依赖 PHP 脚本进行 zip 压缩确实不是最好的处理方式(显然因为它会产生类似这样的问题!)。

希望这对某人有所帮助。

读者可能还会发现这篇文章很有用: Caching problem using "AddHandler application/x-httpd-php"

我还要补充一点,出于性能原因,随意使用 PHP 处理 JS 和 CSS 等静态文件并不是一个好主意。除非文件是真正动态的,否则永远不要调用 PHP 处理程序。否则,您将向服务器添加不必要的资源需求。

【讨论】:

  • 谢谢你!我一直在寻找这个问题的解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-29
  • 2012-12-22
  • 2023-03-09
  • 2021-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多