paco
 Posts:27

| | 07/22/2008 10:14 AM |
| Hello John, I have been reading lately some interesting articles like this one: http://www.codeproject.com/KB/aspnet/fastload.aspx Quote:
Script tags pause rendering on several browsers especially in IE until the scripts download and execute. As a result, it gives user a slow loading impression as user stares at a white screen for some time until the scripts before the content download and execute completely. If browser could render the html before it downloads any script, user would see the page content immediately after visiting the site and not see a white screen.
End quote Pageblaster is already doing a lot to speed and optimize the javascript files in a DNN website.
However, according to this article it seems as when the javascript is at the bottom of the page, the rendering of the page will go faster. What is your opinion?
Is it possible to have the javascript of DNN at the bottom, if not competeley maybe then partly? If this offers a performance gain, is it possible that PageBlaster will offer this option in the future? Regards, Paco | | | |
|
|
|
Host Account
 Posts:104


| | 07/22/2008 10:35 AM |
| Hi Paco, PageBlaster already does this optimization.
It will move all JS files that are the head section into one merged file, minify it, compress it, and cache it, then it puts the merged file link at the bottom of your page.
PageBlaster also moves some of the core DNN JS files to the head so that they will be included in the above process if you enable those rules in your Snapsis.PageBlaster.config file.
| | | |
|
paco
 Posts:27

| | 07/22/2008 11:59 AM |
| Hello John,
Thanks for your answer. I saw indeed the core JS files in the head. Is it mandatory to have it there if DNN is used? If not so, for having more performance gain it is better to have also those JS files at the bottom of the page, right?
Regards, Paco | | | |
|
Host Account
 Posts:104


| | 07/22/2008 12:22 PM |
| PageBlaster does move them to the bottom of the page.
First it moves any that it can from the middle of the page to the head, then it optimizes and merges them all together and moves the one link to the bottom.
| | | |
|
paco
 Posts:27

| | 07/22/2008 12:50 PM |
| Hello John, If I look at the source of your home page I see on the third line the "dnncore.js" javascript. On line 22 you have the following javascript:
WebResource.axd?d=e-Zx0bvhzz9bAAMy2-M8oQ2&t=633506905433203125 If I look at my home page I have a lot of javascript on the top of the page also. You was telling: PageBlaster also moves some of the core DNN JS files to the head so that they will be included in the above process if you enable those rules in your Snapsis.PageBlaster.config file. How can I enable those rules? It seems like not enabled. Thanks in advance. Regards, Paco
| | | |
|
John Mitchell Posts:3471


| | 07/22/2008 1:05 PM |
| WebResource files are not included in this optimization since they may not be Javascript or CSS (they can also be images, text, etc.)
My optimized JS file for the home page is at /Cache/JS/0bbb04afbf759b9c480779c9e1274466.js.axd
If you look in the Snapsis.PageBlaster.config file in the root of your website, there are some rules that move the DNN JS files to the head. If you uncomment those rules then they will be included in the optimization. It only moves them when you are not logged in because DNN has namespace conflicts in their JS files when logged in. | | | |
|
paco
 Posts:27

| | 07/22/2008 1:30 PM |
| Hello John,
I understand that WebResource files are not included in this optimization for the reason you mentioned.
I looked at the Snapsis.PageBlaster.config file and I already did the action that you also wrote in that file: Comment or remove the next two exclude paths to further optimize DNN JS & CSS files
I believe that this is the only action that has to be taken to include them in the optimization, right?
My remaining question is then how is it possible that "js/dnncore.js" and "/controls/SolpartMenu/spmenu.js" javascript are still at the top side of the page. I am still using the community version and testing. May that be the reason?
Regards, Paco | | | |
|
John Mitchell Posts:3471


| | 07/22/2008 2:36 PM |
| dnncore.js should be moved, but spmenu.js is not moved. spmenu.js has to come before your solpart menu in the page or it won't work.
If you want to give me a link to your site I may be able to figure out why dnncore.js is not moved. | | | |
|
paco
 Posts:27

| | 07/22/2008 11:28 PM |
| Hello John, The dnncore.js is on line 3 of your home page, www.snapsis.com . Seems like it is not moved there either. My website is http://www.top-ict.com . We are optimizing it during these days for better performance.
The dnncore.js is on line 42 of my home page.
As you can see there is also a WebResource.axd on line 39, it is in a javascript tag.
On the lines 45 and 46 are a ScriptResource.axd, in a javascript tag also. If the WebResource.axd and ScriptResource.axd are in a javascript tag, then it must be just javascript in the file, right?
If that is the case, they can be moved to the bottom too, right?
Regards, Paco | | | |
|
John Mitchell Posts:3471


| | 07/23/2008 7:58 AM |
| dnncore.js is not in my homepage output if you are not logged in. It does show up if you are logged in though as mentioned previously.
I don't think your Snapsis.PageBlaster.config file is setup to move them on your page because I also see dnn.js in your page output and there isn't any PageBlaster Merged file. There are some excludes for Merging CSS & JS at the top of the config that need to be commented out or removed.
If you want, you can attach your config file (zip it or rename it to .txt) and I'll take a look at it.
WebResource and ScriptResource files are never merged automatically. They are optimized by PageBlaster, but it would probably cause problems if they were merged and moved to the bottom of the page since the asp.net framework injects those inline.
Those files also have to go through a different process on the server for PageBlaster to optimize them because they are virtual files that don't physically exist. | | | |
|
paco
 Posts:27

| | 07/23/2008 9:49 AM |
| Hello John, The dnncore.js is indeed not in your homepage when logged out. I did not log out when I checked.
Thanks for your explanation about the WebResource and ScriptResource files.
I attached the file you requested. Seems to me ok but of course there must be something going on otherwise it would work. Regards, Paco |
Attachment: 1723492430471.txt
| | |
|
paco
 Posts:27

| | 07/25/2008 2:24 AM |
| Hello John,
Did you take a look at the attached file? As you can see I placed the 2 lines within comment tags.
Is it correct that only this part of PageBlaster is not functioning correct on my website?
I can see all the pageblaster files and the directory structure with folders named by the tabid of the pages. It seems all to be working fine.
I also deleted sometimes the cache from pageblaster and it comes with the message about the amount of MB's deleted. All seems to be working fine.
Except for the the 2 lines within comment tags in the snapsis.pageblaster.config file, I am further using the default settings for now until all issues are solved.
After that I like to start with Friendly URL's and many other opitons, I will need the licensed version.
Like to buy several licenses of PageBlaster but need to solve this last issue first. ;-)
Regards, Paco | | | |
|
John Mitchell Posts:3471


| | 07/25/2008 10:14 PM |
| Hi Paco, I think you are only missing a few replacement rules in your config file. If you look in the default.config file in the DesktopModules/Snapsis/PageBlaster/Config folder you can compare that to your Snapsis.PageBlaster.config file in the root of your site and copy over the missing replacement rules from there. | | | |
|
paco
 Posts:27

| | 07/29/2008 9:12 AM |
| Hello John, I copied the whole "Providers" XML Node from default.config and pasted this into the Snapsis.PageBlaster.config file. All replacement rules are there.
Had to turn off (comment) the ruleName "Move Viewstate to bottom" because otherwise the page remained just white. After doing this all the other rules are functioning and the page has become smaller indeed. It is also clear in the page source fille that the page changed. However, still the dnncore.js is not at the bottom of the page. I attached the Snapsis.PageBlaster.config file. Can you take a look at it and help me out? Regards, Paco |
Attachment: 172912836271.txt
| | |
|
Host Account
 Posts:104


| | 07/29/2008 9:30 AM |
| I can't see any reason why the dnncore.js & dnn.js files would not be merged. If you turn on the trace debugging it may tell us. in the config file set the trace node to level="Debug" and then do a hard refresh on the home page. After that you should have a trace file called pb.trace.config in your website root folder. | | | |
|
paco
 Posts:27

| | 08/01/2008 3:37 AM |
| Hello John,
I did enable debugging but with no luck of generating the mentioned debug file in the code.
I changed the name of the debug file and tested again, no luck.
Of course I restarted DNN and I decided to restart the whole WWW Publishing service, no luck.
I looked in the root folder and in the DesktopModules/Snapsis folder.
I did a search in my website folder for "*.config" but the debug file was not found.
Meaning I have to solve this issue first before we can find out why the js is still at the top of the page.
What to do next?
Regards, Paco | | | |
|
John Mitchell Posts:3471


| | 08/01/2008 6:39 AM |
| Hi Paco, Maybe you don't have write access to the root website folder.
You can change the path for the trace file so that it goes to a different folder. Try changing the path to : file="/DesktopModules/Snapsis/PageBlaster/pb.trace.config" | | | |
|
paco
 Posts:27

| | 08/01/2008 10:10 AM |
| Hello John,
The "Network Service" account has all the necessary rights for DNN to run correctly.
I checked if it has write permissions and it does.
Furhter in the IIS settings within the Tab "Home Directory" I have the following settings:
The "local path" > "Write" checkbox = enabled.
The "Execute permissions" = "Scripts and executables".
I think the last two mentioned settings are not necessary but I did this to have the rights as loosen as possbile for testing Pageblaster.
What other settings should be set to give the correct rights to pageblaster?
Regards, Paco | | | |
|
John Mitchell Posts:3471


| | 08/01/2008 10:37 AM |
| If you have the settings for DNN, then that is all you need. I would turn the "Scripts and Executables" and the write permission back off.
Does your trace node have < trace level="Debug" file="/pb.trace.config" /> ?
Is this website running in a virtual folder?
If you know the physical path to your web folder you can use that too. something like: < trace level="Debug" file="C:\inetpub\wwwroot\DNN\pb.trace.config" />
| | | |
|
paco
 Posts:27

| | 08/01/2008 11:08 AM |
| Hello John,
I can not make it work! I tried the relational and the physical path, both no luck.
I have a suggestion, I can give you temporary access to my test server. Of course I will pass the login credentials by E-mail and not on this forum. If you think this may be a good way to solve this problem, provide me the mail address ok?
If you have any other ideas to solve this problem, let me know.
Regards, Paco | | | |
|