Web Development
- How to Address Mobile Usability Issues Detected on Your Website *
- Why Google AdSense is Showing Ads Intermittently *
- Why is the Time to First Byte (TTFB) so high? *
- My website is showing blank webpages after editing a password variable of a php file *
- Why is My Page Slow on GTmetrix? *
- Not Secure: Your connection to this site is not fully secure *
- Cross-origin resource sharing (CORS) *
- Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from '...xxx?wsdl' : failed to load external entity *
How to Address Mobile Usability Issues Detected on Your Website *
We understand that having a functional and visually appealing website is crucial for any business. As a web hosting provider, we're fully aware that website owners may face some common issues that can impact their website's design and functionality.
It's not uncommon for our customers to contact us regarding issues they've found on their website using Google Search Console. We want to assure you that the issue you're experiencing is not related to your hosting service, regardless of the web hosting plan you've subscribed to. These are development issues related to your website's code.
While our primary role as a web hosting provider is to offer reliable web hosting services, we recognize that these issues can be frustrating. We want to help you in any way we can, even though we don't provide web development services. As such, we'd be more than happy to direct you to a third-party webpage that may provide additional information about this issue.
If you have any other questions or concerns, please don't hesitate to contact us. We're always available to assist you and ensure that you have the best possible experience with our services.
Why Google AdSense is Showing Ads Intermittently *
If you're experiencing an issue with AdSense, it's understandable that you might wonder whether it's related to the hosting service you're using. However, we want to assure you that AdSense is a third-party service, and the issue you're experiencing shouldn't be related to your hosting service, regardless of the web hosting plan you subscribed to. We understand that problems with AdSense can be frustrating, but we're here to help you in any way we can.
One common issue that can cause AdSense to show ads intermittently is repeatedly refreshing or opening pages on your website. If you're experiencing this issue, Google may stop showing you ads. To optimize the performance of your ads, we recommend using AdSense reports and Google Analytics to monitor how your ads are performing.
We also recommend checking out this helpful article that covers other possible causes of intermittent ads and provides tips for resolving the issue.
Our support team is always available to help with any questions or concerns you may have about our web hosting services. Please don't hesitate to reach out to us if you require any assistance. We're committed to helping you make the most out of your web hosting service.
Why is the Time to First Byte (TTFB) so high? *
TTFB (Time To First Byte) generally refers to the amount of time it takes for the server to respond to a client's request and send the first byte of data back to the client. In other words, it's the time between when a user enters a URL in their web browser and when the first byte of data is received from the server.
TTFB is measured in milliseconds and includes the time it takes for the server to process the request and generate a response, as well as the time it takes for the response to travel from the server to the client. Typically, TTFB is measured from the moment the client sends the request to the server until the moment the server sends the first byte of the response back to the client.
Understanding TTFB: Definitions and Variations by Tool and Environment
It is important to recognize that how TTFB is measured and reported can vary based on the tool, browser, app, or service used to measure it. Some tools measure TTFB as the time elapsed between when the request is sent and when the server begins sending the response, while others may measure it as the time elapsed between when the request is sent and when the first byte of the response is received by the client.
Additionally, TTFB can be affected by factors like network latency, server processing time, and caching. As a result, establishing a single universally applicable definition for this metric is difficult. TTFB measurements may, therefore, vary depending on the specific tool or method used to measure it and other factors related to the network, server, and client environment.
For instance, in GTmetrix, TTFB is measured as the sum of "Redirect Duration" + "Connection Duration" + "Backend Duration." On the other hand, when using WebPageTest to download a page, you might encounter an unexpected surprise. Specifically, WebPageTest may report the Time To First Byte as the time the "H" was received, rather than the time the page itself was actually sent. This discrepancy becomes apparent due to the 10-second wait.
Common Causes of a High TTFB
There are several reasons why TTFB can be high. For example:
- Server processing time: The server might take too long to process the request and generate a response. This may happen when the server is overloaded, the code is poorly optimized, or the database queries take too long to execute.
- Network latency: TTFB may be affected by the distance between the user's device and the server and any network congestion or bottlenecks that exist between them.
- DNS lookup time: Before a user's device connects to a server, it must first lookup the server's IP address via a Domain Name System (DNS) server. This can add additional time to the TTFB if the DNS lookup takes a long time to complete.
- Content delivery network (CDN) issues: When a website is using a CDN, the TTFB may be impacted by the CDN's caching policies, network latency between the CDN and the origin server, or the number of hops required to route the request to the appropriate server.
- Third-party resources: If a website depends on resources hosted on third-party servers, it may affect TTFB.
Diagnosing a high TTFB requires investigating these potential causes and making the necessary optimizations to improve server response time, reduce network latency, and streamline content delivery. It's important to understand that upgrading your service plan or server hardware won't reduce load times if your web application code is inefficient.
More Resources
- https://gtmetrix.com/reduce-initial-server-response-time.html
- https://moz.com/blog/improving-search-rank-by-optimizing-your-time-to-first-byte
- https://web.dev/time-to-first-byte/
My website is showing blank webpages after editing a password variable of a php file *
In addition to checking the error log file, you can try the following suggestions to resolve the issue of blank web pages after editing a password variable in a PHP file:
- Revert the changes: Undo the changes you made to the password variable and see if your website displays correctly. If it does, reapply the changes carefully, ensuring you don't introduce any syntax errors.
- Syntax check: Use a PHP syntax checker or an Integrated Development Environment (IDE) to scan your PHP file for syntax errors that could cause the blank webpages.
- File permissions: Ensure that the file permissions for the PHP file and related files are set correctly. Incorrect permissions can cause issues in loading or executing the scripts.
- Clear cache: Clear your browser cache and server cache (if applicable) to ensure you're viewing the latest version of your website.
- Error reporting: Temporarily enable error reporting in your PHP (ini_set, .htaccess).
This will help you identify any errors that might be causing the blank webpages.
Remember, if you still need assistance or have any questions, please don't hesitate to contact us. We're here to help you with any concerns or challenges you may face.
Why is My Page Slow on GTmetrix? *
If you're experiencing slow loading times on your website, rest assured that you're not alone. Slow loading is a common issue that can affect even the most well-optimized websites.
However, there are numerous ways to address the problem and speed up your website. By understanding the different factors that can impact your website's performance, you can take proactive steps to improve its speed and optimize the overall user experience.
Common Reasons for Slow Loading
Here are some common reasons why your page might be slow on GTmetrix:
- Large File Sizes: Large images, videos, and other multimedia files can significantly slow down the loading time of your page. To improve load times, consider compressing or optimizing these files to reduce their size.
- Unoptimized Code: Poorly written or unoptimized code can slow down your page's loading time. Consider optimizing your HTML, CSS, and JavaScript to improve page speed and performance.
- Browser Caching: Browsers cache certain files, like images and CSS, to speed up subsequent page loads. If caching is not enabled, it can cause the page to load slowly. Ensure that browser caching is enabled on your website.
- Too Many Requests: Too many HTTP requests can also slow down your page's loading time. Minimize the number of HTTP requests by combining multiple CSS and JavaScript files into one.
- Server Location: The physical distance between the user and the server can have a significant impact on page load time. Consider using a content delivery network (CDN) to host your website and reduce the latency caused by server location.
- Outdated CMS or Plugins: Using outdated content management systems (CMS) or plugins can also slow down your website. Keep your CMS and plugins up to date to take advantage of performance improvements.
- Too Many Ads or Pop-Ups: While ads and pop-ups can be a great source of revenue, they can also slow down your page load time. Try to reduce the number of ads and pop-ups on your website for faster load times.
- Complex Design: A complex or heavily designed website can also contribute to slow page loading. Consider simplifying the design and removing unnecessary elements to improve performance.
- Traffic: If your website receives a high volume of visitors, it's possible that your server response time may slow down. If your server is not equipped to handle a large volume of traffic, it can affect the website's performance.
These are just a few possible reasons why your page might be slow on GTmetrix. To diagnose and resolve the issue, you can use GTMetrix's analysis tools to identify the root cause and take the necessary steps to optimize your website. With a little bit of work and attention to detail, you can have a fast and efficient website that users will love. So go ahead and make the necessary changes to improve your website's speed and enhance user experience.
Upgrading Your Service Plan or Server Hardware
Upgrading your service plan or server hardware is not always the best solution for improving website performance, even if you're experiencing a high volume of visitors. It's recommended that you first address other potential causes, such as inefficient web application code.
Importance of Server Maintenance and Support
Ensuring that your server is functioning correctly is crucial to prevent slow loading times caused by a sluggish server response. In the event of an incident, you can check for any known issues on the Status page of your server. Unlike unmanaged servers where customers are responsible for their own server, with our managed servers, we take care of monitoring and optimizing the servers regularly.
Conclusion
If you have a managed service, it may still be possible to make small optimization adjustments to improve the stability and performance of your service and avoid an upgrade. Therefore, please do not hesitate to reach out to our friendly and professional support team if you need assistance.
We are always available and eager to help you in any way we can, and we are committed to providing you with a reliable and efficient service. Remember, our goal is to ensure that your website performs at its best, offering a seamless user experience that keeps your visitors engaged and satisfied. Don't hesitate to ask for support or advice on optimizing your website — we're here to help you succeed.
Not Secure: Your connection to this site is not fully secure *
Are you seeing a warning symbol in your browser, along with a message stating that your connection to this site is not fully secure? Don't worry, we're here to help!
Upon further inspection, you might also come across this message:
Attackers might be able to see the images you're looking at on this site and trick you by modifying them.
This warning usually appears when a website with a valid SSL certificate loads certain resources, such as images, CSS, or JavaScript files, over the HTTP protocol instead of the secure HTTPS protocol. This results in a mixed content warning.
What is mixed content?
Mixed content occurs when secure (HTTPS) and non-secure (HTTP) content are both delivered over SSL to your browser. In other words, not all resources loaded by the website are using the HTTPS protocol.
How to fix mixed content errors?
To resolve mixed content errors, you'll need to replace any resources using "http://" with "https://". Fixing mixed content issues is a development endeavor and falls outside the scope of our support. We recommend consulting with a web developer or your website administrator to address these issues.
By resolving mixed content errors, you can provide a secure browsing experience for your visitors. This will not only build trust with your audience but also help maintain a professional appearance for your website. If you have any further questions, please don't hesitate to reach out. We're always here to help!
Cross-origin resource sharing (CORS) *
Cross-origin resource sharing (CORS) is a mechanism that allows restricted resources on a web page to be requested from another domain outside the domain from which the first resource was served.
To add the CORS authorization to the header using Apache or Litespeed Enterprise, add the following line within a .htaccess file:
Header set Access-Control-Allow-Origin "*"
Alternatively, you may also use the following:
# Permit OPTIONS, GET, POST, PUT and DELETE requests. # Apache 2.2 <IfModule !mod_authz_core.c> <Limit OPTIONS GET POST PUT DELETE> Allow from all </Limit> </IfModule> # Apache 2.4 <IfModule mod_authz_core.c> <Limit OPTIONS GET POST PUT DELETE> Require all granted </Limit> </IfModule>
You can also set a CORS header from a PHP script:
<?php header("Access-Control-Allow-Origin: *");
You can confirm the CORS header is being set through the development tools of your web browser or using CURL with the following command:
curl -H "Origin: origin-example.com" --head "your-website.com"
CORS headers are supported on our web hosting plans and managed servers. On unmanaged servers, it should also be supported by default - depending on the web control panel and web server you are using (e.g., Directadmin or cPanel with Apache).
Troubleshooting
CORS headers are usually related to web development, especially if you are trying to integrate your web application with an API.
If you've already confirmed the CORS headers are being set on the server-side and you are still having difficulties, we would suggest rechecking the CORS parameters being used. It might be necessary to use different parameters to work with your code or API.
Would you prefer to stop worrying about the configuration of your operating system or web server? Get one of our web hosting plans or managed servers today! We'll take care of the technical aspects, so you can focus on growing your business.
Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from '...xxx?wsdl' : failed to load external entity *
Assuming there are no issues with your web server configuration and the remote server is online, you may want to check if the SSL Certificate associated with the external entity is valid.
Before checking if the SSL Certificate is valid, we have attached to this article a zip archive containing some PHP SoapClient scripts known to be working.
Using these PHP SoapClient scripts, you can compare results and confirm if your web server configuration is working as intended. If you are not receiving any output in either of those scripts, the issue might be related to the system configuration.
If you can open these scripts in your browser without seeing an error, it means the web server is correctly configured and working as intended on your side. Feel free to proceed to the next step if that's the case. If it's not, please contact us.
To check if the SSL Certificate is valid, you may use a third-party tool, such as:
Important observation: If the URL associated with the external entity opens correctly in your browser or your local machine, it doesn't mean the SSL Certificate is completely valid. Depending on the operating system, libraries on it, other web server configurations associated, and SoapClient version, it might be possible that only your SoapClient identifies the SSL Certificate located on the external server as invalid.
In a specific case we troubleshooted, no errors were showing when the Curl command was executed on the server (to clarify, the server where we were trying to execute the SoapClient script). However, when the same command was executed on another device with a different operating system and libraries, we could see the following error:
curl: (60) SSL certificate problem: certificate has expired curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above.
Basically, we learned that the Curl command and SoapClient were presenting different responses on the very same server.
If the SSL Certificate is invalid, the obvious course of action would be to fix the SSL Certificate on the remote server. However, that is not always possible.
One of the workarounds available is to disable the SSL Certificate verification within the code of your SoapClient script.
The following example works for the PHP SoapClient: https://stackoverflow.com/questions/8443618/disable-certificate-verification-in-php-soapclient.
The last time we were contacted regarding this issue, the cause was an invalid SSL Certificate installed on the remote server. After applying the solution above, it was possible to resolve it.
Please note that you usually need to be a web developer or a highly-skilled system administrator to apply the solution above.
If that's not your case, and if the issue you are having is confirmed to be related to an invalid SSL Certificate, you might want to contact the support team of the remote server to install a valid SSL Certificate instead. Alternatively, you can hire us or a third party to apply the solution for you.
If your issue is not related to the solution presented above or you require additional assistance, please contact us.