Why would links break bc of JS? [closed] - javascript

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 6 years ago.
Improve this question
On this site, which is on Joomla and using a plugin called Matukio, the links on the left used to work, but no longer do and we are desperate to figure out why.
The company who makes the plugin replied with this info, but it sounds like he's just spouting a bunch of stuff that isn't really the cause (JUri::root() is working fine, the VWO stuff was there before when the links worked, etc).
I doubt anyone can give much insight based on this limited info, but just taking a shot bc stackoverflow is literally the best site on the internet for help. If anyone has any ideas on things i should look at, test, please share...
FROM MATUKIO:
you have JavaScript errors on your page (not caused by Matukio):
07:43:49.475 ReferenceError: Heatmap is not defined
<anonym>events:129
1events:129:3
ga('set', 'VWO', Heatmap);
Additionally the following is failing:
07:44:55.490 Loading of mixed contents "http://www.workwave.com/index.php?option=com_matukio&view=requests&format=raw&task=route_link&link=index.php%3FItemid%3D283%26option%3Dcom_matukio%26view%3Deventlist%26art%3D0%26catids%3D0%26search%3D%26limit%3D10%26dateid%3D2%26fees%3D0%26locations%3D0%26organizers%3D0%26ordering%3D1%26start%3D0&Itemid=283" was blocked .1jquery.min.js:5:25679
As you see the link looks right, but hte protocol is wrong. E.g. http
instead of https.. Are you using any plugin for https redirection? Or
htaccess? It seems that JUri::root() is not working correct on your
instance. Joomla has a setting for https in the global config.
Kind regards,
Yves

It's hard to tell without more information but it looks like your site is using HTTPS. This is a good thing. But one of the restrictions is that if you're using a secure connection, then you can't access resources that are stored on a server using the non-secure HTTP protocol (it's kind of buying a fancy lock for your front door and then leaving the window open.)
This is likely coming from the Heatmap library. If you're pull this library from a CDN, try changing the url to "https://" instead of "http://" and this should fix it.

Related

"site requires javascript" return as keywords from analysers [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I made a website using one of the free bootstrap site builder (Mobirise), while the codes looks messy and likely used too much unnecessary javascript, the site looks fine on browser and not sluggish.
However, when I analyse it with one of the free seo analyser, all of them return saying I have no description or title, even though the code definitely have it, and comes up with keywords such as "site requires javascript" and "please enable javascript".
From some of the tools that render the site as well, it usually just render the navigation bar only without the remaining content.
I tried to target it by searching those keyword phrases in the files and see if one of the javascript library acting funny and give those warnings but those phrases are not to be find within any files. So my deduction is it is a browser or server issued warning.
What is the issue here and how may I solve it? If it indeed is a coding issue, how do I know which javascript library is at fault?
The site is here
The tools I have been using includesthis & this & this
Thank you for your help in advance!
There is no coding issue with your site, it's more a problem you need to see with your hosting provider.
Without user agent header, a visitor gets 403 error:
$ curl 'http://viviennelawmakeup.com/'
<html>
<head><title>403 Forbidden</title></head>
<body bgcolor="white">
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx</center>
</body>
</html>
With a user agent, it gets this (note the part where it says "This site requires Javascript to work, please enable Javascript in your browser or use a browser with Javascript support"):
$ curl -s 'http://viviennelawmakeup.com/' -H 'User-Agent: FakeUserAgent'
<html><body><script type="text/javascript" src="/aes.js" ></script><script>function toNumbers(d){var e=[];d.replace(/(..)/g,function(d){e.push(parseInt(d,16))});return e}function toHex(){for(var d=[],d=1==arguments.length&&arguments[0].constructor==Array?arguments[0]:arguments,e="",f=0;f<d.length;f++)e+=(16>d[f]?"0":"")+d[f].toString(16);return e.toLowerCase()}var a=toNumbers("f655ba9d09a112d4968c63579db590b4"),b=toNumbers("98344c2eee86c3994890592585b49f80"),c=toNumbers("18fc59896ba5a77d84e6593224fe7c9a");document.cookie="__test="+toHex(slowAES.decrypt(c,2,a,b))+"; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/"; location.href="http://viviennelawmakeup.com/?i=1";</script><noscript>This site requires Javascript to work, please enable Javascript in your browser or use a browser with Javascript support</noscript></body></html>
I've tested with a "real" user agent and got same response.
So your SEO tools are seeing this instead of the real site, and that explains the mystery.
But it also means it's not a programming issue, and therefore off-topic for stackoverflow, your question might get deleted. Unless maybe you are hosting yourself, and that initial page is controlled by a server-side script of yours... Or maybe your .htaccess (which I just noticed in the tags). I wonder if that question should be migrated to webmasters site.

How to Inject Javascript code during HTTP call [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 9 years ago.
Improve this question
I want to inject some javascript code during HTTP call before onload function is called. How can i achieve this? Is this even possible? I have achieved this using Chrome extension but I want some other method to inject the code which works on all other browsers. Something like injecting through URL bar while opening the page. This injection should work on all sites i open.
Another neat way to do it is to have the request go through a proxy. The proxy can inject the JS by modifying the source before it arrives to the client. This is how most ad-supported (ad-injecting) proxies do it.
But then, it's a security issue. That's why, same as having to tell the user to install an extension, you'd have to tell the user to use the proxy. Otherwise, it's a no-go.
Yet another way to do it is to have the owners of the site embed a script that points to a permanent path. Behind that path, you write any script, which may include one that loads some more scripts.
It can be as short as:
<script src="path/to/a/permanent/location"></script>
This is typically how publicly served APIs work, like Google. Behind their permanent path is a script that loads all the APIs you need. But, like I said in the previous section, you need permission, this time in the form of having the webmaster embed the script on the page.

In my web site I changed a javascript file but if I view the source of the page there is still the old file [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 9 years ago.
Improve this question
I modified the javascript file and updated it in my server via FTP.
The problem is that even if i deleted from my browser all the cache I still see the old file.js!
Both javascript file have the same file name. I think if i change the name it will work but I don't want to change the name...
How to fix this?
Try adding a "?version=value" to your request, like this:
<script src="myfile.js?v=1.0"></script>
A good approach to handle this type of caching problem is versioning the resource file.
In your case you can update file version like yourFile-1.2.js
and point the updated file
<script type="text/javascript" src="yourFile-1.2.js"></script>
Thanks for the solution with the version, but the problem wasn't solved beacuse of my hosting provider.
In the last 24 hours I received an email about a new FREE cool feature for my website that was activated automatically: CloudFlare.
This cool feature started caching my website so today for the first time from that email I modified my web site and I got the problem.
Found the solution in the FAQ of my web hosting provider. I activated, in the new cool feature, the developer mode.
So now I can live happy :)
Again, thanks for your informations. Could be useful to me in the future!
P.S. This new COOOOOOOOOL feature was the result of a new partnership between Altervista (my hosting service provider) and CloudFlare.

Hack <script> inserted at top of the page [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
A friend and I developed a page using Joomla 2.5.8 and set it up on a Linux webserver with Plesk.
Somehow someone injected a script which seems to be malware into the first line of the code.
And what's even more strange is that if I delete this script, it will be inserted somehow at the same place.
Does anyone have an idea how to fix this now?
To fix this:
Make sure your installation of joomla hasn't been compromised. Download the whole source code and compare it against a clean copy on a different computer to check this. There might be several files changed. One contains the code above, another reinstalls the code every time you delete it and a third one checks for updates of the other two and installs them.
Make sure the web server process cannot write any of the files of your joomla installation.
Make sure you deleted the install scripts.
Make sure you changed the default password.
Some attackers run a script which checks that your site is still cracked and crack it again every time you fix the problem. Upgrade to the latest version of joomla to fix this. If that doesn't help, you might have to take down your site for some time until the security hole is fixed.
If you have any plugins installed, upgrade or disable them.
Check for viruses/trojans on your server. If this is Linux, look for odd login attempts, processes that shouldn't be there, etc.
Always install all the security patches for your OS

Firefox plugin that can modify incoming data before the page processes it? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 months ago.
Improve this question
Say a webpage loads an external javascript at load, is there any such FireFox plugin that I could use to modify the javascript before the page actually processes it?
(not just specifically javascript)
Thanks in advance.
(also I'm pretty sure Tamper Data plugin only changes header data and not actual content being received)
For everyone that has never used tamperdata: Tamper data is for OUTGOING requests. Tamper Data can modify the ENTIRE request, except the URL which requires you to replay the request.
Using GreaseMonkey you can make stand-alone custom plugins that can modify any element of the page before it loads.
Here is THE GUIDE you want which explains GreaseMonkey.
Here are a massive number of GreaseMonkey "UserScripts". This site contains many examples of what you are looking for.
You have a couple options:
Tamper Data will modify POST parameters (and GET really since you can modify the URL).
You can also combine FoxyProxy (https://addons.mozilla.org/en-US/firefox/addon/2464) with any number of free interactive proxies (Fiddler, Paros, Burp, Charles)
Finally you can choose to not use a proxy and write up a greasemonkey script.
I think you'll likely have the most luck with the FoxyProxy + proxy approach. Unfortunately it's not a single addon.
The minimalistic browser-agnostic approach would be to write your own bookmarklet. For example I have found the Show Hiddens bookmarklet to be extremely useful for debugging form submissions. While extremely simple the bookmarklet does things which Tamper Data cannot.
I have found it here:
http://www.squarefree.com/bookmarklets/forms.html
Also the Forms tab in the Web Developer toolbar has some useful options.
If You want to change a downloadable resource, use Opera, set it's cache to never expire, and modify the files cached. That's how I did it a year or two ago, successfully.
I believe GreaseMonkey can modify the data in the page, though I'm not sure if it's executed before or after the page loads.
Check out TamperMonkey for Chrome: http://tampermonkey.net/
Or if you want to do it manually, in Chrome, it's really simple.
In Chrome, browse to: chrome://extensions. Then drag your .js file into that page.
Chrome will automatically create a manifest.json file in the Chrome AppData folder.
You can change the manifest.json file to filter the websites you want to use your script on.

Categories