Signal R code doesn't work in live environment - signalr

The Signal R implementation what I have done works perfectly in localhost with two browsers on the same machine, but when I publish the code it faces some DNS resolution related problem and stops working when I test the published code on two different machines. I'm not sure what stops it from working.

The first thing I should check is if you can access http://SomeDomain.com/signalr/hubs
That should load JS, if that doesn't work, you will need to start tracking things down from there. As "N. Taylor" states in the comments, your path to SignalR/HUBS might differ if you've changed things in development, so you will want to customize the above URL based on any customizations you've made in DEV.
Once you get the proper path to /signalr/hubs and get JS loading when you access that URL, it should be easier to get things tracked down a bit.

Related

URLRewrite rules randomly not being loaded - Intershop 7.10.29.2

EDIT1: intershop.urlrewrite.CheckSource is turned off already
We are recently having quite big problems with URL rewrite rules not being loaded in test and production multi-node environments.
The problem started happening after introducing another organization and it's related application onto the servers.
From then on we have tried multiple changes and debugging methods to try to figure it out, but without any result.
Also the major problem is that it doesn't happen all the time and server restart can fix it but not always.
Here are the details so far how the problem manifests (this has been going on for more than a month now on our production system):
Most of the time it starts happening after the deploy of new code and starting up the server
Then multiple people from multiple computers and locations try opening the website and some open it and others get either 404 or "URL invalid" page, so its 50/50.
On the PC where someone successfully opens page, if you try again in incognito mode then you may get again 404(probably connects to another node/appserver).
Usually the problem is resolved either by server restart or by restarting a single node(no code or configuration changes) although this is no reliable way and on the last occurrence we tried multiple restarts and it didn't help. After a few days one of the team members restarted only a single node for debugging purposes and then it started working normally again.
After setting up more detailed log messages and turning on debug messages for URL rewrite classes we have come to the conclusion that the rule loading fails. We have come to this conclusion because we have added debug message on the very start of our applyExpand() method and it never gets shown. This can be observed on the image below:
All of this leads to conclusion that iterator on line 149 is empty.
Please advise on possible causes of this problem and how to resolve it.
The rule loading is implemented so that it's possible to edit/add/remove rules on-the-fly without need to restart the web server. This happens when the property intershop.urlrewrite.CheckSource is set to true. For this, the last-modified time of the file is evaluated. Maybe this doesn't work correctly.
I would recommended to set this property to false and test again if the problems still occur.
With the help of IS support, we have managed to figure out that the problem was that the URL rewrite rules were in a cartridge that wasn't part of every possible application on server which would result in undefined behavior when loading them (it would load on one appserver and on another it wouldn't).
The fix was to add a new common cartridge for all possible applications which would then hold urlrewrite rules and which would definitely be loaded on server startup.

Can't navigate through ASP.NET website while Jmeter recorder is running

The title pretty much says it all. When I'm running HTTP(S) Test Script Recorder, one particular page becomes unresponsive - when I click on something it just reloads. The recorder itself is working fine, it is recording every step. And the problem is not proxy related. I've successfully recorded other pages of the same website. When I'm not recording, there are no problems.
It's a .NET 3.5 project.
The page itself has a lot of forms, file uploads, etc, but as far as I know, it should not interfere with recording or even more - with browsing the page. When debugging the project, no breakpoints are hit, so I assume that something gets lost before reaching the server.
Browsers that I've tried: tried FF, Chrome, Edge, IE.
Tried recording the web locally and online. Same thing.
Played around (reinstalled and whatnot) with certificates, didn't help.
Has anyone encountered such a problem? What could be done to fix this? I'm more interested in finding the solution, than a way around (blazemeter, badboy). Any help would be very appreciated.
EDIT: I tried recording with blazemeter and it worked. But when looking at view results tree I noticed that the request path and parameters don't change, even when in the HTTP Request Sampler they are different. So there's no solution yet
This often happens to me and what I've found is that JMeter changes the root certificate in the bin folder every week. So usually the HTTP traffic is fine but certain HTTPS traffic won't work. So make sure that your browsers are seeing the latest JMeter certificate and not using an old one that doesn't exist anymore. On Windows, Chrome and IE use the certificates in Internet Options, while Firefox needs to have it added to it manually.
It turns out that in Test Script Recorder HTTP Sampler Settings choosing Type: Java was all that was needed. I suspect that the issue was related to file upload being involved.

Codekit 3 - External Server Issue

I've been using codekit for ages now, and now I've been using the version 3 since it came out.
I really like this app, but there's something I never really understood and I decided to post it here (hoping to finally understand how this works and how to make it works like I want).
I have MAMP pro installed, with some hosts.
Let's say I have this list of hosts with (fake) document root:
localhost -> documents/site1/dist
test -> documents/sitetest/dist
and let's assume that test is a wordpress site having the site url set to
http://test/ in the database.
In codekit, when I enable the browser refresh, the bottom options asks me to write down the address I would visit to see my website.
Now, if I navigate to http://test/ my WordPress website loads and I am able to see everything.
In codekit I then setup the browser refreshing options to be the following:
Animation: ticked
Refresh Delay: 0.0 seconds (default)
Preview: empty
Document-Root Subpath: empty
External Server Required: on
External Server Address: http://test/
Then when I click on the green dot (server) to preview my website, I'm expecting codekit to navigate to http://test:5757 and to properly display my website. This, unfortunately, is not the case. When I click on the preview (or server, it doesn't really make any difference for me) codekit navigates to my mac IP and the website is either not loading or loading without any external resource.
I don't think the issue is in the way I load the resource in WordPress (i use enqueue sources properly, and the website without using codekit refresh function works, load and displays as meant to).
So far, I always switched my current project to use the localhost host (changing the document root in MAMP pro) and then telling codekit to use the localhost ip as external server, but now it's a bit more complex, as I have way more projects and I was hoping not to change back and forth the document root to use codekit built in refreshing feature.
Is it possible? am I missing something here?
I read all I was able to find as well as watched the videos on codekit, but this bit here is still a bit unknown to me and any help would be really appreciated.
Thanks
PS: No need to mention I am on a MAC, right? :)
I don't believe I actually managed to fix this.
I'll leave the answer here in case somebody else is facing the same issue.
The problem I had was that my website http://test/ was using a theme called test.
Codekit, for refreshing the browser, uses a simple string search and replace in the URL, and so everything that looked like "test" in the url was replaced by the internal ip.
Quick example:
http://test/wp-content/themes/test/index.php
became
http://192.168.0.1:5757/wp-content/themes/192.168.0.1:5757/index.php
and of course no file where loaded successfully, as the path was wrong.
To fix this?
Just change the MAMP pro address to something that won't be present in the URL (in my case, the MAMP pro host called test became dev.test and problem solved.

Determining the source of a website slowdown

I am in the process of assisting a client build a site at ballershoesdb.com.
About 50% of the time that I try to load the site (either load the front end or access the WordPress backend), it takes 20 seconds or more to load a page. I have had various people in different places across the world test the site and most report no issues, though some have occasionally reported significant slowdowns. A test on Pingdom shows an issue with browser caching but I doubt that is the cause of what I am seeing.
What steps can I take to determine the source of this problem?
Generally your approach of running tests with Pingdom (or others, such as Gomez or Catchpoint) can be incredibly helpful to determine problem areas. In my initial assessment, I saw that there was generally a slow response for the scripts and stylesheets coming from your server and it wasn't always the same script causing issues. For instance, sometimes it was bootstrap.js and sometimes not.
The fixes I would recommend to try are:
Load your content from a CDN
Use different domain names that rotate (each browser will only open a fixed number of connections to each domain and it varies by browser)
Put all of your scripts in a single file if possible, and minify them.
Ensure all of the files you're downloading are needed (you seem to have multiple themes loading.)
Determine whether you need to load all of the scripts in your HEAD, as this blocks page rendering.
You can try https://testmysite.thinkwithgoogle.com/. It tells you, where your site has performance issues and gives you hints on how you can fix them. You can use this as a starting point.
A similar free online tool can also be found at: https://gtmetrix.com/

Why does Response.Redirect("") Return an Error in One Test Environment and Not Another?

We're trying to figure out how to fix a bug found in 3rd party IV&V testing, which we can't recreate in our internal test environment.
We've determined that the bug is caused by a URL value being inadvertently set to an empty string ("") before attempting to redirect to it. Hence, we're trying to execute Response.Redirect("").
In the external test environment, this line of code results in the following error:
Internet Explorer cannot display the webpage
In the internal test environment, the current page is simply reloaded.
The servers are virtually identical - the internal test server has the same physical hardware as the external server, and is even running a copy of a virtual image of the external server. Hence, all Windows and IIS settings should be identical.
Is there a physical networking, load balancing or other environmental issue that could cause this kind of discrepancy?
Thanks for any ideas.
I would use Fiddler to take a look at the HTTP response from the server and make sure they are exactly the same. When you've done that, you know it's a client-side or environment issue. Next...
What is the URL in the address bar for the two browsers? Better yet... in IE right click on the page and look at the Properites. What are you really seeing here? On my local system testing Response.Redirect("") I get something like this: "res://ieframe.dll/dnserror.htm#http://localhost/test.aspx" DNSERROR! Hmmmm... interesting!
Also, consider what happens in the following situation:
http://somelanname
...in an environment where "somelanname" is the name of a resource on your local intranet... and then what happens when you try to access that URL when it doesn't exist. I think you are seeing the same thing here.

Resources