11

I am in the process of testing a Magento 1.3 site using Magento 1.4. I am seeing very weird and inconsistent behavior. Instead of including the URL of my javascript files, Magento is creating tags with the full filesystem path of the js files, as so:

<script type="text/javascript" src="/home/my_username/public_html/js/prototype/prototype.js"></script>

I believe this is related to the new "Themes JavaScript and CSS files combined to one file" function. In fact, when I log into the admin and click "Flush JavaScript/CSS Cache", then the first page load is successful, and I see a single JS include similar to:

<script type="text/javascript" src="/media/js/5b8cfac152fcb2a5f93ef9571d338c54.js"></script>

But subsequent age loads load every single JS file, with the full path names. Which obviously isn't going to work. Anyone have any ideas on what could be wrong or how to fix this issue?

4

10 に答える 10

11

私の場合は権限の問題でした。これらの ssh コマンドは、Magento のルート ディレクトリで実行され、修正されました。

    # chown all to proper user and group, ie. www-data
    chown -R www-data:www-data *
    # change all files permissions to 644
    find . -type f -exec chmod 644 {} \;
    # change all directories permissions to 755
    find . -type d -exec chmod 755 {} \;
    # change all to be writable in var and media directories
    chmod -R 777 var/ media/

それでもうまくいかない場合は、MySQL の core_config_data のパス列の次の 2 つの値を「1」から「0」に変更します。

  • dev/css/merge_css_files
  • dev/js/merge_files
于 2013-01-21T13:28:00.243 に答える
9

[システム]->[構成]->[開発者設定]->[Javascript設定]->[JavaScriptファイルのマージ(ベータ版)]に移動し、「no」に設定します。本当にベータ版です:D

于 2010-02-15T16:23:54.830 に答える
9

config.xml を編集してもうまくいきませんでした。データベースで無効にする必要がありました。

テーブル ' core_config_data ' で、パス ' dev/js/merge_files ' (config_id 772) の行の値を ' 0 ' に設定します。

でも正しい方向に向けてくれてありがとう!

于 2010-02-25T01:35:40.130 に答える
8

私は同じ問題を抱えていて、次の解決策を思いつきました:

  1. media/js のアクセス許可が、magento インストールのフォルダーと同じユーザーに属していることを確認します。
  2. admin を使用して CSS/JS キャッシュを消去します。

2つの組み合わせにより、実際に正常に戻りました。

于 2010-03-18T03:35:15.033 に答える
4

Web サーバーを実行しているユーザーがメディア フォルダーに書き込み可能かどうかを確認します。ルートのみが書き込み可能なフォルダーへのシンボリックリンクがありました

chown -R www-data:www-data media

助けた。

于 2011-10-18T11:01:44.953 に答える
1

私は同じ問題を抱えていました。

これは、magento が JavaScript ファイルを見つけられないためです。/var/log/exception.log を確認します (システム -> 構成 -> 開発者向けオプションでログを有効にする必要があります)。

私のログには次のエラーがありました:

メッセージ「警告: filemtime() [function.filemtime]: /var/www/app/code/core/Mage 内の /var/www/js/calendar/lang/calendar-en.js の統計に失敗しました」という例外「Exception」 /var/www/app/code/core/Mage/Core/functions.php:245 の 631 行目の /Core/Helper/Data.php

だから私はファイルを作成し、出来上がりました!

于 2010-05-19T12:20:06.993 に答える
1

config.xml を編集してもうまくいきませんでした。データベースで無効にする必要がありました。

tablecore_config_dataで、行の値を path に設定しますdev/js/merge_files (config_id 772) to '0'

でも正しい方向に向けてくれてありがとう!

このソリューションは私にとってはうまくいきました、ありがとう。

于 2010-05-14T05:21:50.637 に答える
0

この問題は、javascriptのマージオプションに関連しています。残念ながら、フォームはjavascriptなしでは機能しません。app / code / core / Mage / Core / etc/config.xmlのmerge_filesオプションを0に変更する必要があります。

        <js>
            <merge_files>0</merge_files>
            <deprecation>0</deprecation>
        </js>

その後、varディレクトリ内のすべてのキャッシュファイルとセッションファイルを削除しました。

于 2010-02-19T17:58:10.077 に答える
0

構成の「Web」の下にあるさまざまなベース URL フィールドの値は何ですか? の線に沿ったものでなければなりません

{{unsecure_base_url}}skin/

ベーススキン URL 用。

于 2010-01-27T01:37:34.597 に答える
0

magento 1.4では、config_idは879です(私にとって)この値を0に設定すると、すべての.jsファイルが返されました。超変

于 2011-03-18T19:45:32.520 に答える