Why is Magento 1.4 including javascript files by filesystem path?

六眼飞鱼酱① 提交于 2019-12-18 11:59:09

问题


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?


回答1:


go to System -> Configuration -> Developer Settings -> Javascript Settings -> Merge JavaScript Files (beta) and set it to "no". It is realy a beta :D




回答2:


It was permissions issue in my case. These ssh commands run in the root directory of Magento fixed it:

    # 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/

If it still doesn't work then change these two values for path column in the core_config_data in MySQL from "1" to "0":

  • dev/css/merge_css_files
  • dev/js/merge_files



回答3:


Editing the config.xml didn't do the trick for me, I had to disable it in the database.

In table 'core_config_data' set the value of the row with path 'dev/js/merge_files' (config_id 772) to '0'.

Thanks for pointing me in the right direction though!




回答4:


I had the same problem and came up with the following solution:

  1. Verify that the permissions on media/js belong to the same user that the magento installation's folder is.
  2. Clean the CSS/JS cache using the admin.

The combination of the two actually got things back to normal.




回答5:


Check if your media folder is writeable by the user you webserver runs with. I had a symlink to a folder that was only writeable by root

chown -R www-data:www-data media

helped.




回答6:


I had the same Problem.

Its because magento can't find a javascript file. Look at your /var/log/exception.log (You have to enable the log in System -> Config -> Developer Options)

In my log was the following error:

exception 'Exception' with message 'Warning: filemtime() [function.filemtime]: stat failed for /var/www/js/calendar/lang/calendar-en.js in /var/www/app/code/core/Mage/Core/Helper/Data.php on line 631' in /var/www/app/code/core/Mage/Core/functions.php:245

So I created the file and voila it works !




回答7:


Editing the config.xml didn't do the trick for me, I had to disable it in the database.

In table core_config_data set the value of the row with path dev/js/merge_files (config_id 772) to '0'.

Thanks for pointing me in the right direction though!

This solution is worked for me, thanks.




回答8:


What are the values for the various Base URL fields under "Web" in the configuration? Should be something along the lines of

{{unsecure_base_url}}skin/

for the base skin URL.




回答9:


The problem is related with the javascript merge option. Unfortunatly the form does not work without javascript. You have to change the merge_files option in app/code/core/Mage/Core/etc/config.xml to 0.

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

After that I removed all cache files and session files in var directory.




回答10:


in magento 1.4 the config_id is 879 (for me) Setting this value to 0 gave me all my .js files back. Super weird



来源:https://stackoverflow.com/questions/2141873/why-is-magento-1-4-including-javascript-files-by-filesystem-path

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!