2012-06-16 8 views
6

私のWordPressの「Edit Post」ページのTinyMCEエディタが壊れているようです。クロームコンソールは示しています。私はChromeデベロッパーツールでtinymce.jsを調べるとWordpress tinymce.jsはPHPとして解析されていますか?

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 

、私はこれらの応答ヘッダを参照してください。

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にも問題があります。問題は突然突然起きたようだ。私は、私が変更したもの、プラグインのアップデートやインストール/アンインストールを認識していません。

ありがとうございます。

+0

phpを使ってそのjsファイルをどこかに入れていないのは確かですか? 'grep -r -n -I --color/home/mysite/public_html/tiny_mce.js'、またはディレクトリ全体?また、http confとそのフォルダ内の任意の.htaccessをチェックするか、その親のいずれかがそのファイル/フォルダをphpとして扱わないようにしています – gingerCodeNinja

答えて

4

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の設定のチュートリアルがあるため、いくつかのの.jsファイルを処理するためにPHPを使用することをお勧めトリックはそれをあなたに任せます。最も一般的な理由は、PHP GZIPファイルをZIPに呼び出すためです.JSファイルを圧縮します。残念ながら、tiny_mce.jsを処理するためにPHPを使用すると、Wordpressを壊すようです。 PHPは、tiny_mce.jsファイルの何かに乗っています。

私はこの正確な問題に遭遇し、自分の設定から.jsファイル用のPHPハンドラを削除しなければなりませんでした。私のApacheは独自のzipを実行するように設定されているので、実際にはその必要はありませんでした。私はgzipを実行するPHPファイルを呼び出すことはありません。 zip圧縮用のPHPスクリプトに依存することは、実際には(このような問題が発生するため、明らかに)良いことではありません。

これは誰かを助けることを望みます。

読者はまた、これはポスト便利かもしれません: Caching problem using "AddHandler application/x-httpd-php"

私もその任意のJSやCSSなどの静的ファイルを処理するためにPHPを使用すると、パフォーマンス上の理由のために良いアイデアではありませんが追加されます。ファイルが本当に動的でない限り、PHPハンドラを呼び出すべきではありません。そうしないと、不要なリソース要件がサーバーに追加されます。

+0

ありがとう!私は長い間、この問題の解決策を探していました。 –

関連する問題