Ahref Free Tools check Domain Rating https://ahrefs.com/backlink-checker
Ahref Free Tools
https://josuamarcelc.com | 28 October 2022
https://josuamarcelc.com | 25 April 2023
https://josuamarcelc.com | 22 Feb 2023
software engineer's blog
Ahref Free Tools check Domain Rating https://ahrefs.com/backlink-checker
https://josuamarcelc.com | 28 October 2022
https://josuamarcelc.com | 25 April 2023
https://josuamarcelc.com | 22 Feb 2023
In the world of Search Engine Optimization (SEO), understanding the behavior of search engine crawlers is crucial. These crawlers, also known as bots or spiders, are automated programs used by search engines like Google, Bing, and others to scan and index the content of websites. By identifying the IP ranges of these crawlers, webmasters can optimize their websites more effectively. This article delves into the top crawlers, their IP ranges, and how this knowledge benefits SEO.
ENGINE | ENDPOINT |
Google IP Ranges | https://www.gstatic.com/ipranges/goog.json |
Google Bots | https://developers.google.com/static/search/apis/ipranges/googlebot.json |
Google Special Crawlers | https://developers.google.com/static/search/apis/ipranges/special-crawlers.json |
Google User Triggered | https://developers.google.com/static/search/apis/ipranges/user-triggered-fetchers.json |
Global and regional external IP address ranges for customers’ Google Cloud resources | https://www.gstatic.com/ipranges/cloud.json |
BingBot IP Ranges | https://www.bing.com/toolbox/bingbot.json |
DuckDuckGo Bots | https://duckduckgo.com/duckduckgo-help-pages/results/duckduckbot/ |
Ahref Crawler IP Ranges | https://api.ahrefs.com/v3/public/crawler-ip-ranges |
Yandex IP Ranges | https://yandex.com/ips |
Facebook IP Ranges | https://developers.facebook.com/docs/sharing/webmasters/crawler/ |
Cloud IPs | Reference Link |
IP Ranges v4 | https://www.cloudflare.com/ips-v4/# |
IP Ranges V6 | https://www.cloudflare.com/ips-v6/# |
API IP Ranges | https://api.cloudflare.com/client/v4/ips |
Yandex Cloud IPs | https://cloud.yandex.com/en/docs/vpc/concepts/ips |
Crawlers are automated programs that visit websites to read and index their content. They follow links from one page to another, thereby creating a map of the web that search engines use to provide relevant search results.
Recognizing crawlers is essential in SEO as it ensures that your website is indexed correctly. Proper indexing increases the chances of your website appearing in search results, thereby driving organic traffic.
Recognizing and understanding the IP ranges of top search engine crawlers is a vital aspect of SEO. It helps in distinguishing between genuine search engine bots and potential security threats, enhances website performance, and contributes to more effective SEO strategies. As search engines evolve, staying informed about crawler activities and best practices is essential for maintaining and improving your website’s search engine visibility.
There are generally four types of corporations that are commonly used for incorporation:
To compare top-level attributes for each type of corporation and compare them to other business structures, please visit our Business Structures Chart.
A limited liability company is a business entity that offers some separation of the people owning the business from the business itself. An LLC protects its owners (known as “members”) from being financially liable for most debts and damages and protects their personal assets in the event a business fails.
Forming an LLC requires that the business owner(s) file articles of incorporation. These articles outline the structure of the business. This is where LLCs rise above the other business entity types available to US small businesspeople—an LLC can opt for many different operating models: a 50/50 partnership, or even maintain a board of directors, like a C corporation.
The main advantage to forming and operating as an LLC lies in its simplicity. Income is taxed at the personal level one time, as opposed to at the corporate level, or both the corporate and personal levels (“double taxation”). LLCs can also choose what tax treatment works best for them—they can opt for pass-through taxation, like an S corp, or double taxation, like a C corp.
See our state specific guides for California LLC, Texas LLC and Florida LLC.
An S Corporation is formed in the same way that a C Corporation. However, the S Corporation is different from a C Corporation in two significant ways:
For those groups that are formed for charitable, educational, religious, literary, or scientific purposes, and not for the purpose of generating profits for its shareholders, a special legal entity may be formed under Section 501(c)(3) of the Internal Revenue Code. A fully and properly qualified 501(c)3 Nonprofit Corporation has the following characteristics:
Small business owners in the US may incorporate their company in any of the 50 states. The state in which you incorporate your small business determines a variety of important factors, not just which laws your company is subject to. It will dictate how your business is taxed and even where you can sue or be sued.
Variables to consider when choosing where to incorporate your small business include:
Certain fields requiring special certification or licenses—such as medical or legal practice—are limited in terms of what types of business entity practitioners can elect to form. Depending on the state of incorporation, groups of such professionals may have to come together in the form of a professional corporation or professional services corporation.
Professional services corporations allow licensed professionals to benefit from the liability protections embedded in traditional corporate structures, excluding malpractice claims against licensed practitioners themselves. Professional services corporations are taxed like C corps. They are subject to corporate tax, as well as tax on shareholder distributions.
In some states, such as California or Virginia, professionals may organize into LLPs or LLCs. The main difference between an LLP/LLC model and a professional services corporation is that the latter must pay income taxes on the corporation itself, like a C corp, whereas with LLPs and LLCs, members pay personal income taxes on income received.
Occupations covered by these state mandates may include:
PHP 8.2 also includes bug fixes and performance improvements over previous versions like 8.1. We recommend you test your codebase with PHP 8.2 before upgrading in a production setup, just to ensure that everything works as expected.
In this article we shall cover steps that are used in the installation of PHP 8.2 on Ubuntu 22.04|20.04|18.04. The default version of PHP available on OS repositories is usually older than PHP official latest releases. PPA (Personal Package Archive) software repositories for PHP allows you to install newer releases of PHP on your Ubuntu system that are not available in the official repositories of a Linux distribution.
sudo apt update
sudo apt install -y lsb-release gnupg2 ca-certificates apt-transport-https software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt install php8.2-cli php8.2-fpm php8.2-common php8.2-mysql php8.2-pgsql php8.2-zip php8.2-gd php8.2-mbstring php8.2-curl php8.2-xml php8.2-bcmath php8.2-memcached
php -v
PHP 8.2.8 (cli) (built: Jul 8 2023 07:10:21) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.8, Copyright (c) Zend Technologies
with Zend OPcache v8.2.8, Copyright (c), by Zend Technologies
<script async custom-element="amp-analytics" src="https://cdn.ampproject.org/v0/amp-analytics-0.1.js"></script>
<amp-analytics type="googleanalytics" config="https://amp.analytics-debugger.com/ga4.json" data-credentials="include">
<script type="application/json">
{
"vars": {
"GA4_MEASUREMENT_ID": "G-XXXXXXXX",
"GA4_ENDPOINT_HOSTNAME": "www.google-analytics.com",
"DEFAULT_PAGEVIEW_ENABLED": true,
"GOOGLE_CONSENT_ENABLED": false,
"WEBVITALS_TRACKING": false,
"PERFORMANCE_TIMING_TRACKING": false,
"SEND_DOUBLECLICK_BEACON": false
}
}
</script>
</amp-analytics>
As a small sneak-peak, this is the meaning for all the configuration switches.
FEATURE NAME | DESCRIPTION |
---|---|
GA4_MEASUREMENT_ID | Your Measurement ID , G-XXXXXXXX |
GA4_ENDPOINT_HOSTNAME | Override the default endpoint domain. In case you want to send the hits to your own server or a Server Side GTM Instance. |
GOOGLE_CONSENT_ENABLED | a &gcs parameter will be added to the payloads with the current Consent Status |
WEBVITALS_TRACKING | If you enable this a webvitals event will fire 5 seconds after the page is visible |
PERFORMANCE_TIMING_TRACKING | Whatever you want to push a performance_timing event including the current page load performance timings |
DEFAULT_PAGEVIEW_ENABLED | If enabled a page_view event will fire on the page load |
SEND_DOUBLECLICK_BEACON | Send a DC Hit |
PHP 8.2 is work well with WordPress, i tested already on my site josuamarcelc.com
josuamarcelc
ALL IN ONE CODE
sudo apt update && apt upgrade -y
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.2 -y
sudo apt-get install -y php8.2-cli php8.2-common php8.2-fpm php8.2-mysql php8.2-zip php8.2-gd php8.2-mbstring php8.2-curl php8.2-xml php8.2-bcmath php8.2-pgsql
The first thing to do in a new system is to update our repositories in order to make them up to date. Run upgrade command also.
sudo apt update && apt upgrade -y
To run PHP 8.2 on Ubuntu 22.04, we need to add Ondrej sury PPA into our system. This is the maintainer of the PHP repository at the moment. This PPA is not currently checked so installing from it will not be guaranteed 100% results.
To add this PPA use the following command on our terminal.
sudo add-apt-repository ppa:ondrej/php
After installation is complete we need to update the repositories again for the changes to take effect.
sudo apt update
We should now be able to install PHP 8.2 on Ubuntu 22.04 Linux machine. The commands to run are as shared below:
sudo apt install php8.2 -y
Check for the currently active version of PHP with the following command:
php --version
Besides PHP itself, you will likely want to install some additional PHP modules. You can use this command to install additional modules, replacing PACKAGE_NAME
with the package you wish to install:
sudo apt-get install php8.2-PACKAGE_NAME
You can also install more than one package at a time. Here are a few suggestions of the most common modules you will most likely want to install:
sudo apt-get install -y php8.2-cli php8.2-common php8.2-fpm php8.2-mysql php8.2-zip php8.2-gd php8.2-mbstring php8.2-curl php8.2-xml php8.2-bcmath php8.2-pgsql
This command will install the following modules:
php8.2-cli
– command interpreter, useful for testing PHP scripts from a shell or performing general shell scripting tasksphp8.2-common
– documentation, examples, and common modules for PHPphp8.2-mysql
– for working with MySQL databasesphp8.2-zip
– for working with compressed filesphp8.2-gd
– for working with imagesphp8.2-mbstring
– used to manage non-ASCII stringsphp8.2-curl
– lets you make HTTP requests in PHPphp8.2-xml
– for working with XML dataphp8.2-bcmath
– used when working with precision floatsphp8.2-pgsql
– for working with PostgreSQL databasesDNS | IPv4 | IPv6 |
Google Public DNS | 8.8.8.8 8.8.4.4 | 2001:4860:4860::8888 2001:4860:4860::8844 |
OpenDNS | 208.67.222.222 208.67.220.220 | – |
Quad9 (Malware Blocking Enabled) | 9.9.9.9 149.112.112.112 | 2620:fe::fe 2620:fe::9 |
DNS.Watch | 84.200.69.80 84.200.70.40 | 2001:1608:10:25::1c04:b12f 2001:1608:10:25::9249:d69b |
Comodo Secure DNS | 8.26.56.26 8.20.247.20 | – |
Cloudflare | 1.1.1.1 1.0.0.1 | – |
DNS propagation is the time DNS changes take to be updated across the internet on the globe. It can take up to 72 hours to propagate worldwide. You can check your DNS propagation results from here.
DNS resolution translates the domain name into the site’s IP address. You need a site’s IP address to know where it’s on the internet. A website could have IPv4 or IPv6 addresses or both. Where the IPv4 address comes in the form of an A record and the IPv6 address comes in an AAAA record.
When you update your DNS records, it may take up to 72 hours for the changes to take effect. During this period, the ISPs worldwide update their DNS cache with new DNS information for your domain.
However, due to different DNS cache level, after DNS records changes, some of the visitors might be redirected to the old DNS server, for some time, and other can see the website from new DNS server, shortly after the changes. You can perform the A, AAAA, CNAME, and additional DNS records lookup.
Suppose you changed your domain’s nameservers, and you requested to open your domain on the web browser. Your request will not go to the hosting directly.
Each of the ISP nodes first checks its DNS cache, whether it has the DNS information for that domain. If it is not there, it will look it up to save it for future use to speed up the DNA lookup process.
Thus, the new nameservers will not propagate instantly – ISPs have different cache refreshing levels, so some will still have the old DNS information in their cache.
But if after that time interval, still, your new DNS changes are not reflecting, then you go for a DNS health check to ensure that your DNS changes are up to the mark and are following the standards.
Suppose you request to open the URL https://abc.com in your web browser’s bar.
The ISPs across the world have a different caching level. The DNS client or the server may cache the information the DNS records in its DNS cache. That information is temporarily cached, and DNS servers will go for the updated DNS information when TTL (Time to Live) expires.
The DNS server will return a name error, also known as an NXDomain response (for non-existent domain), to symbolize that the query’s domain name does not exist.
DNS uses both TCP and UDP port 53. However, the most frequently used port for DNS is UDP 53. That is used when the client’s computer communicates with the DNS server for resolving the specific domain name. Be sure, when using the UDP 53 for DNS, the maximum size of the query packet is 512 bytes.
TCP 53 is used primarily for Zone Transfers and when the query packet exceeds 512 bytes. That is true when DNSSEC is used, which adds extra overhead to the DNS query packet.
DNS failure means that the DNS server cannot convert the domain name into an IP address in a TCP/IP network. That failure may occur within the company’s private network or the internet.
It is necessary to make a backup of the database before reinstalling the server or just in case something unexpected happens. We can actually do backups through Phpmyadmin by exporting all databases. But what if we haven’t installed Phpmyadmin on the Server?
1. Backup Schema and Data
mysqldump -u username -p --all-databases > backup.sql
or
mysqldump -u username -p -A > backup.sql
2. Backup only the Schemas
mysqldump -u username -p --all-databases --no-data > backup_schema.sql
or
mysqldump -u username -p -A -d > backup_schema.sql
3. Backup by Remote Server
mysqldump -u root -h 128.168.1.1 -p -A > backup.sql
4. Backup Routines
mysqldump -u username -p db_name --routines > backup_routinetrigger.sql
or
mysqldump -u username -p db_name -R > backup_routinetrigger.sql
5. Backup Routines and Triggers
mysqldump -u username -p db_name --routines --triggers > backup_routinetrigger.sql
6. Backup Specific Database
mysqldump -u username -p --database db_name > backup_db_name.sql
or
mysqldump -u username -p db_name > backup_db_name.sql
7. Backup Specific Table in Specific Database
mysqldump -u username -p --database db_name table_name > backup_db_name_table_name.sql
or
mysqldump -u username -p db_name table_name > backup_db_name_table_name.sql
8. Restore all Databases
mysql -u username -p < backup.sql
9. Restore one database
mysql -u username -p db_name < backup_db_name.sql
10. Manual command line for mysql
man mysqldump man mysql
11. References
1. Update Ubuntu and get PostgreSQL requirements
sudo apt update wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql-pgdg.list > /dev/null sudo apt update
2. Get PostgreSQL 14 installed on your Ubuntu system
sudo apt install postgresql-14
3. PostgreSQL’s default port (5432) should not be held hostage by any other system process.
sudo ss -atnp | grep 5432
4. Next, restart, enable PostgreSQL so that it keeps running even after your Ubuntu system reboots, and check on the status of PostgreSQL to make sure it is running.
sudo systemctl restart postgresql sudo systemctl enable postgresql sudo systemctl status postgresql
5. Connecting to PostgreSQL 14 Database in Ubuntu
sudo -u postgres psql
6. For example, to create a PostgreSQL admin superuser that has all the database user privileges, we would execute the following query.
CREATE ROLE <username> WITH LOGIN SUPERUSER CREATEDB CREATEROLE PASSWORD '<password>';
<username> : any usernames , <password> : any passwords
7. To confirm the existence of the PostgreSQL superuser, execute the following command.
\du
8. To exit PostgreSQL shell, run the command
exit;
1. Edit the configuration file to allow remote access
vi /etc/postgresql/14/main/postgresql.conf
Look for this line in the file:
listen_addresses = 'localhost'
Uncomment, and change the value to '*'
, this will allow Postgres connections from anyone.
listen_addresses = '*'
2. Save and exit the file. Next, modify pg_hba.conf
to also allow connections from everyone. Open the file with your preferred editor:
vi /etc/postgresql/14/main/pg_hba.conf
Modify this section:
# IPv4 local connections:
host all all 127.0.0.1/32 scram-sha-256
To this:
# IPv4 local connections:
host all all 0.0.0.0/0 scram-sha-256
3. Allow PostgreSQL port from Firewall
sudo ufw allow 5432/tcp
4. Restart PostgreSQL
sudo systemctl restart postgresql
1. Edit netplan File
sudo vi /etc/netplan50-cloud-init.yaml
2. Add Nameserver Google / Cloudflare or any, on nameserver
network:
ethernets:
[network-device]:
...
nameservers:
addresses:
- 2001:4860:4860::8888
- 2001:4860:4860::8844
- 8.8.8.8
- 8.8.4.4
- 1.1.1.1
notes: don’t use tab on this file, only space allowed.
3. Apply and Test the Network
sudo netplan apply
systemd-resolve --status