Skip to main content

Installation Requirements

WordPress requires a fully installed and configured LAMP stack before installation on a Linux host:
  • Linux operating system
  • Apache HTTP Server
  • MySQL database
  • PHP
After installation, supporting files and directories are typically accessible from the webroot at /var/www/html.

File Structure

Below is the directory structure of a default WordPress install, showing key files and subdirectories needed for the site to function.

Key WordPress Files

The root directory contains files needed for WordPress to function correctly.
  • index.php: Homepage entry point.
  • license.txt: Useful installation and version information.
  • wp-activate.php: Handles email activation during new site setup.
  • wp-admin: Contains administrator login and backend dashboard functionality.
  • xmlrpc.php: XML-RPC endpoint for remote communication over HTTP/XML. This has largely been replaced by the WordPress REST API.
Common login paths include:
  • /wp-admin/login.php
  • /wp-admin/wp-login.php
  • /login.php
  • /wp-login.php
Administrators can also rename login-related paths to make discovery harder.

WordPress Configuration File

The wp-config.php file includes database connection settings, authentication keys and salts, table prefix configuration, and debug settings.

Key WordPress Directories

The wp-content directory is where plugins and themes are stored. Its uploads subdirectory usually contains user-uploaded files. These paths should always be enumerated carefully because they may expose sensitive files, insecure upload handling, or vulnerable components.
The wp-includes directory stores core WordPress components such as certificates, fonts, JavaScript files, and widgets.

WordPress User Roles

There are five default user role types in a standard WordPress installation. Gaining administrator access is usually the most direct path to server-side code execution. However, editor and author accounts may still expose meaningful attack paths when vulnerable plugins or role-misconfigured features are present.