In the context of computing and IT technologies, the 'index' is a universal term, used in a variety of cases - from the index directory listing of websites to the database index and the index of the search engines.
What the index refers to?
In our real life, the index is a universal term used for naming a logically structured list of the information contained in a particular place like a book, a library, etc. for our easy orientation through their archive. In the sphere of computing and IT technologies, the index serves a similar purpose - to provide a summary of the items included in a data container for the users to easily reference to its contents. Since in this sphere there are many different types of data containers, the index can be placed in several different contexts:
When talking about websites, the index is characterized by a double function - as a directory listing all files and folders under a certain domain when no website is created for it, or as the file for the first page on any website.
If you have registered just your own domain and open it in a browser you will see a white page named 'Index of', listing the default main directory of the domain. If you upload the contents of your future website online in the form of files and folders to that domain's directory without creating an index.html file, you will keep seeing the same page. The only difference will be that now all files and directories uploaded to your domain will be displayed online. The page contains the name of each file or directory and some additional information about the date they were uploaded and modified for the last time, their size and short description. So here the index ensures an overview of the contents of a website that is not yet ready to come up and receive visitors online.
To replace the /index of your new website you with the page you want to come up online when you type your domain in the browser you will need to set up an index.html file. The index.html file is the 'face' of your website, since it includes all the information displayed on the site's home page. Its name comes from the fact that this file offers visitors an overview of the purpose and contents of a website, providing navigational links (navigation menu) and visual references (banners) to the internal pages of the site.
With the appearance of the dynamic sites server technology, using server-side scripts like PHP, Perl, ASP, etc. and modern HTTP servers like the Apache web server, the index file can now take various forms including index.php, index.shtml, default.asp, etc. The actual extension of the index file is dependent on the server-side script used for making the site's backbone. If the site is based on PHP, the file will be named index.php, allowing for dynamic content to be used on the index page.
Databases, as the main technology for storing and managing the content of dynamic websites, also have their index. The database index represents a data structure aimed at increasing the operational speed of a database table. You can create your index using the database columns, where you must specify the names of all the key fields that will define the table structure. Some advanced databases like MySQL and PostgreSQL allow a more advanced indexing in accordance with certain pre-defined conditions.
An example of a database index:CREATE INDEX part_of_name ON customer (name(10));
Search Engine Index
The appearance of your website on the search engine result pages is also related to some kind of indexing. As soon as your website is noticed by the search engine bots, its contents are scanned and entered into their database of already scanned sites i.e. their index. The main purpose of search engine indexing (also known as web indexing) is to ensure that you find the text, video, audio, or image you are searching for quickly and accurately using certain keywords.
This way, when you type certain keywords in the search engine bar, the search results will be readily presented to you, since the search bot has already scanned the documents and listed them in the order of their keyword relevance. With no index created in advance, the search engine will have to make a live scanning of the pages and determine their ranking order, which might take hours.