Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteiTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Antihost offers managed WordPress hosting with free migration, one-click staging and a 14-day free trial.
Install WordPress on Debian with the distribution’s integrated package, Apache, MariaDB and PHP, then finish the setup at your site’s /wp address. The reliable sequence is to install the packages, harden MariaDB, create a dedicated WordPress database user, configure an Apache virtual host, add Debian’s hostname-specific configuration file, and complete the browser installer.
This guide follows Debian’s filesystem layout rather than an upstream WordPress tarball. That distinction matters: Debian stores the application under /usr/share/wordpress, content under /var/lib/wordpress/wp-content, and host configuration under /etc/wordpress.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Check Debian, WordPress and server prerequisites
Use a supported Debian release with shell access, root or sudo privileges, a text editor and a browser. For a public site, point a DNS name at the server before opening the installer. A resolvable hostname is important because Debian selects the WordPress configuration file from the HTTP hostname sent by the browser.
WordPress.org’s current production guidance calls for PHP 8.3 or newer, MariaDB 10.11 or newer or MySQL 8.0 or newer, HTTPS, and Apache or Nginx. Check the versions available on your Debian release before committing to a production deployment:
#1 Best Overall
- Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
- With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
- Wide Application: attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
- Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
- Economical &Reusable: Built durable materials with a long-lasting battery,our CAGIWIRU air duster it's a sustainable alternative to disposable air cans.
cat /etc/debian_version
apt-cache policy wordpress php mariadb-server
Debian’s packaged version can trail the newest upstream release because it follows the release’s maintenance and security policy. Debian lists these WordPress versions by release in January 2026:
| Debian release | WordPress package version |
|---|---|
| Debian 11 Bullseye | 5.7.14 |
| Debian 12 Bookworm | 6.1.9 |
| Debian 13 Trixie | 6.8.3 |
Compare the package, PHP and database versions with the minimum versions required by your planned plugins and themes. A plugin that requires a newer WordPress release may not work on an older Debian stable package. Upgrade Debian through its supported release process, or deliberately choose a separately managed upstream installation after planning its security updates, permissions, backups and migration path.
A vanilla WordPress installation is documented as needing 128 MB of PHP memory. Treat that as a baseline rather than a capacity plan. Page builders, image processing, large imports, busy stores, traffic spikes and poorly behaved plugins can require substantially more memory, CPU, storage and database capacity. Leave room for logs, backups and package upgrades.
Install Apache, MariaDB, PHP and Debian WordPress
Refresh package metadata and install Debian’s WordPress package together with the LAMP components:
sudo apt update
sudo apt install wordpress curl apache2 mariadb-server
The dependency resolver normally installs PHP and the MySQL-compatible connector required by WordPress. If PHP database support or Apache’s PHP integration is absent, install the connector and module supplied by your Debian release:
sudo apt install php-mysql libapache2-mod-php
Confirm that the runtimes and services are present:
Free tools Windows power users keep installed
One-click scans. No signup required.
php -v
mariadb --version
sudo systemctl status apache2 mariadb
Do not continue while MariaDB or Apache is stopped. Start them and arrange for them to start after a reboot:
sudo systemctl enable --now apache2 mariadb
For a local test machine, the default firewall policy may already permit local access. For a public server, allow only the services you intend to expose, normally SSH and HTTP/HTTPS, and keep MariaDB bound for local application use unless you have a specific, protected reason to allow remote database connections.
Harden MariaDB before creating WordPress credentials
Run Debian’s interactive hardening utility:
sudo mysql_secure_installation
Follow its prompts to remove anonymous accounts, restrict remote administrative access, remove the test database and reload privilege tables. The exact questions vary by MariaDB version, so read each prompt instead of accepting a copied answer blindly. This step reduces unnecessary exposure but does not replace operating-system updates, firewall rules, backups or application hardening.
WordPress must have its own database and application account. Never configure it with the MariaDB administrator account. A separate account limits the damage if a plugin, upload or application credential is compromised.
Create the database interactively
Open the local MariaDB client using Debian’s administrative authentication:
Rank #2
- Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
- Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
- Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
- Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
- Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth
sudo mariadb
Run SQL like this, replacing the example password with a long, unique secret:
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wordpress'@'localhost' IDENTIFIED BY 'replace-with-a-strong-secret';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost';
FLUSH PRIVILEGES;
EXIT;
The grant is scoped to the wordpress database rather than granting server-wide privileges. Keep the password private and do not paste it into a public ticket, article, image or shell history. If your database name or account name differs, use those exact values consistently in the Debian configuration file.
Use a protected SQL file for repeatable setup
For automation, Debian documents executing SQL through its MySQL defaults file. Put the statements in a temporary root-owned file with mode 600, run it, and remove it immediately:
Recommended Free Tools
sudo install -m 600 /dev/null /root/wordpress-db.sql
sudo editor /root/wordpress-db.sql
sudo mariadb --defaults-file=/etc/mysql/debian.cnf < /root/wordpress-db.sql
sudo rm /root/wordpress-db.sql
Do not leave a plaintext password in a broadly readable script, a shared shell history or a backup directory. Verify the account and database if you need to troubleshoot later:
sudo mariadb -e "SHOW DATABASES;"
sudo mariadb -e "SHOW GRANTS FOR 'wordpress'@'localhost';"
Configure Apache with a dedicated WordPress virtual host
Create a site definition at /etc/apache2/sites-available/wp.conf. Replace myblog.example.com and the administrator email with values for your server:
<VirtualHost *:80>
ServerName myblog.example.com
ServerAdmin webmaster@example.com
DocumentRoot /usr/share/wordpress
Alias /wp-content /var/lib/wordpress/wp-content
<Directory /usr/share/wordpress>
Options FollowSymLinks
AllowOverride Limit Options FileInfo
DirectoryIndex index.php
Require all granted
</Directory>
<Directory /var/lib/wordpress/wp-content>
Options FollowSymLinks
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
The two directory blocks are deliberate. The document root contains Debian’s packaged WordPress code, while the alias exposes the writable content directory used for themes, plugins and uploads. Do not substitute a generic /var/www/html layout without also changing the package configuration.
AllowOverride Limit Options FileInfo permits the per-directory settings Debian expects while avoiding an unrestricted override policy. Keep the Require all granted directives scoped to the two WordPress locations; do not grant access to unrelated system directories.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Enable the site and reload Apache
Disable the default site, enable the WordPress virtual host and reload Apache:
sudo a2dissite 000-default
sudo a2ensite wp
sudo service apache2 reload
Check the active configuration if Apache reports an error:
sudo apache2ctl configtest
sudo apache2ctl -S
configtest should report a successful syntax check. The virtual-host listing should show your hostname and the expected configuration file. If another virtual host answers first, check its ServerName, DNS target and whether the default site was actually disabled. Reload Apache after every virtual-host change; editing a file alone does not change the running configuration.
Add Debian’s hostname-specific WordPress configuration
For the hostname myblog.example.com, create:
sudo editor /etc/wordpress/config-myblog.example.com.php
Use values matching the database and user you created:
Rank #3
- 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
- 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
- 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
- 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
- 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.
<?php
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', 'replace-with-a-strong-secret');
define('DB_HOST', 'localhost');
define('WP_CONTENT_DIR', '/var/lib/wordpress/wp-content');
?>
Debian chooses the first matching file according to the HTTP hostname. It also documents fallback names such as config-example.com.php and config-default.php, but a hostname-specific file is safer for a server hosting more than one site. The hostname in the filename must correspond to the name the browser sends, not merely an internal machine name.
Protect the file from unrelated users while leaving it readable by the web process:
sudo chown root:www-data /etc/wordpress/config-myblog.example.com.php
sudo chmod 640 /etc/wordpress/config-myblog.example.com.php
Check that the directory permissions do not prevent the Apache process from traversing the path. Do not make the file world-writable, and do not put the database password in a file inside a publicly served document root.
Do not put a second, conflicting wp-config.php in an unrelated document root. Mixing Debian’s configuration discovery with a manually unpacked WordPress tree is a common source of confusing database and content-path errors.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Complete the installation in a browser
Open the hostname at its WordPress path:
http://myblog.example.com/wp
Debian documents this address redirecting to /wp/wp-admin/install.php. The installer asks for the site title, administrator username, administrator password and email address. Use a unique administrator name rather than a predictable public-facing name, and store the generated password in a password manager.
For a private test machine, the local hostname or an internal DNS name can be sufficient. For an internet-facing site, configure HTTPS before exposing the administrator login. WordPress’s current requirements list HTTPS as part of the recommended production environment; terminate TLS at Apache or at a properly configured reverse proxy, and ensure the canonical site URL uses https. Do not treat an unencrypted first login as harmless if the server is reachable from an untrusted network.
What to verify after the installer finishes
- Visit the front page and confirm that PHP is rendered rather than downloaded as source.
- Sign in at
/wp/wp-admin/and open the dashboard’s site health screen. - Check that the media library can create an upload under
/var/lib/wordpress/wp-content. - Confirm that the site title and administrator email are correct before enabling public registration or installing plugins.
- Open the site from the canonical hostname, not only from an IP address or alternate alias.
- Remove any temporary SQL file and close unused administrative shell sessions.
Maintain the Debian installation
Keep Debian’s package metadata and installed packages current:
sudo apt update
sudo apt upgrade
Debian delivers WordPress security fixes through this package route. Review upgrades before applying them on a production site, and take a database and file backup first if the site cannot tolerate downtime or rollback work. Update Apache, PHP and MariaDB along with WordPress; a patched application running on an obsolete runtime is still a maintenance risk.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallRead /usr/share/doc/wordpress/README.Debian before changing themes, plugins, content locations, multisite behavior, permalink handling or upgrade mechanics. Debian’s package layout and helper scripts differ from instructions written for an upstream tarball. Keep local changes documented so a future administrator can tell which files are package-managed and which are site-specific.
Back up the two things WordPress needs
- Database: export the
wordpressdatabase with a MariaDB-compatible dump and store it outside the web root. - Files: back up
/var/lib/wordpress/wp-content, especially uploads, themes and plugins, along with the hostname-specific file in/etc/wordpress.
Test that a backup can be restored on a non-production machine. A backup that has never been restored is only an assumption. Keep at least one copy away from the server so a filesystem failure or compromised host does not destroy the original and its backup together.
Choose the Debian package or an upstream tarball deliberately
| Approach | What it provides | Important trade-off |
|---|---|---|
| Debian package | Integration with Debian paths, Apache conventions, package updates and README.Debian |
WordPress versions follow Debian’s release and security-maintenance policy |
| Upstream tarball | Direct control over the WordPress files and upstream release timing | You must design the filesystem layout, update process, permissions and web-server configuration yourself |
This article uses the package route. Do not copy a tarball tutorial’s document root, ownership commands or wp-config.php placement into the Debian layout without understanding the consequences. The package route is usually easier to audit on a Debian host because its paths and update behavior follow system conventions; the tarball route can make sense when a required upstream version is unavailable, but it transfers more operational responsibility to you.
Rank #4
- 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
- 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
- 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
- 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
- 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.
Single-site and multisite layouts are not interchangeable
The virtual host above is a straightforward single-site arrangement. Debian also documents an alternate helper-script method for pretty permalinks and multisite deployments. Those configurations can require different Apache rules, rewrite support and hostname or path decisions.
Decide whether the server will host one independent site or a network before installing multiple instances. For multisite, read the Debian README and use its helper-script method rather than adding copied rewrite rules to the single-site file. A single-site configuration that works at /wp is not evidence that a network installation is configured correctly. Plan DNS, cookies, administrator roles, backups and domain mapping before converting a working site.
Troubleshoot the failures that occur most often
Apache shows a directory listing or downloads PHP
Check that the WordPress directory block contains DirectoryIndex index.php, that the virtual host is enabled, and that Apache’s PHP integration is installed. Run:
sudo apache2ctl configtest
sudo apache2ctl -S
sudo systemctl status apache2
A directory listing usually means Apache is serving the wrong document root or is missing the index directive. PHP downloads generally indicate that the PHP Apache module is not installed or enabled. Also verify that the request is reaching the intended virtual host instead of the default site.
WordPress reports a database connection error
Compare every value in the hostname-specific file with the database account:
DB_NAMEmust bewordpress, unless you chose another database name.DB_USERmust match the dedicated account.DB_PASSWORDmust match exactly, including punctuation.DB_HOSTshould match the account host; the example useslocalhost.- MariaDB must be running.
- The account must have privileges on the selected database.
Check service state and grants:
sudo systemctl status mariadb
sudo mariadb -e "SHOW GRANTS FOR 'wordpress'@'localhost';"
If the password was exposed while troubleshooting, change it in MariaDB and update the protected configuration file immediately. A successful login with the administrative account does not prove that the WordPress account has the correct host restriction or database grant.
The browser reaches the wrong site
Verify that DNS resolves to this server, the request’s hostname matches the ServerName, and the WordPress virtual host is enabled. sudo apache2ctl -S shows which virtual host Apache will select. A stale DNS record or an enabled default site can make a correct WordPress installation appear missing. Test with the exact hostname used in the configuration filename.
Pretty permalinks return 404 responses
Review Apache rewrite and module settings and follow the Debian instructions in /usr/share/doc/wordpress/README.Debian. Do not paste rewrite rules from an unrelated upstream installation method; Debian’s helper scripts and package paths may differ. Test the home page first, then one post URL, so you know whether the issue affects routing generally or only rewrite handling.
Uploads fail or themes cannot be installed
Confirm that the alias points to /var/lib/wordpress/wp-content, that the directory exists, and that the web process can write where Debian expects uploads. Inspect Apache’s error log at /var/log/apache2/error.log and avoid making the entire filesystem world-writable as a shortcut. Correct the specific directory ownership or permissions required by the package rather than granting unrestricted access to the whole server.
The package version is older than a plugin requires
First compare the plugin’s minimum WordPress and PHP versions with the versions available from your Debian release. A release package can intentionally trail upstream. Upgrade Debian through its supported release process or choose a separately managed upstream installation only after planning its security updates, backups, permissions and migration path. Do not replace package files in place with an extracted tarball; use a clearly separated migration plan.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Production hardening checklist
- Use a current Debian release and verify PHP, MariaDB or MySQL, and WordPress compatibility before deployment.
- Serve the site over HTTPS and redirect plain HTTP after TLS is working.
- Keep Apache, PHP, MariaDB and WordPress packages updated with Debian’s package manager.
- Use a dedicated database and non-administrator database account.
- Protect
/etc/wordpress/config-*.phpand never publish its database password. - Restrict SSH and database access with the host firewall and network policy appropriate to your environment.
- Back up both the database and
/var/lib/wordpress/wp-content, then test restoration. - Install only maintained plugins and themes, and remove components you no longer use.
- Monitor Apache and MariaDB logs so failed logins, PHP errors and storage problems are visible.
- Check available disk space before updates and media imports.
Apache or Nginx is recommended as the most robust and featureful server for running WordPress, but any server that supports PHP and MySQL will do.
Best Value
SaleUnder Desk Cable Management Tray No Drill, Metal Mesh Cable Management Under Desk with Clamp Mount, 2 Hole Cable Tray with Wire Management and Cord Organizer for Home Office Standing Desk
- 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
- 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
- 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
- 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
- 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.
For this Debian procedure, Apache is the web server, MariaDB supplies the MySQL-compatible database, and Debian’s package conventions connect the two through the hostname-specific configuration file. Following those boundaries is what keeps installation, upgrades and troubleshooting predictable.
Frequently Asked Questions
Which Debian packages install the complete WordPress LAMP stack?
Install Debian’s integrated route with sudo apt update followed by sudo apt install wordpress curl apache2 mariadb-server. If the dependency resolver has not supplied them, add php-mysql and libapache2-mod-php.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Clear out junk files and repair common Windows errors3Fix the driver behind crashes, sound loss and screen glitchesCan WordPress use the MariaDB root or administrator account?
No. Create a separate database and user, then grant that user privileges only on the WordPress database. Using the administrator account increases the impact of a compromised plugin or application credential.
Where does Debian store WordPress files?
The packaged application is under /usr/share/wordpress, writable themes, plugins and uploads are under /var/lib/wordpress/wp-content, and host-specific database settings belong under /etc/wordpress.
Why does Debian use a file named config-myblog.example.com.php?
Debian chooses the configuration file from the HTTP hostname. A hostname-specific file lets separate virtual hosts use different databases and credentials. Debian also documents fallback names such as config-example.com.php and config-default.php.
What URL opens the Debian WordPress installer?
Browse to http://myblog.example.com/wp. Debian documents that path redirecting to /wp/wp-admin/install.php, where you enter the site title, administrator account, password and email.
Recommended Free Tools
Is HTTPS required for a private test installation?
A local or private test machine can use an internal hostname, but HTTPS is part of WordPress’s recommended production environment. Configure TLS before exposing an administrator login to the public internet.
How much memory does WordPress need?
WordPress’s hosting handbook lists 128 MB as sufficient for a vanilla installation. Builders, media processing, imports, traffic and plugins can require more, so treat 128 MB as a baseline rather than a production capacity plan.
What should be backed up?
Back up the MariaDB WordPress database, /var/lib/wordpress/wp-content, and the hostname-specific file in /etc/wordpress. Store copies outside the web root and test restoration on a non-production machine.
Should I use Debian’s package or an upstream WordPress tarball?
The Debian package integrates with Debian paths, Apache conventions and package updates. An upstream tarball offers direct control over release timing but requires you to design the layout, permissions, update process and security maintenance yourself. Do not mix the two layouts casually.
Why do pretty permalinks return 404 errors?
Review Apache rewrite and module settings and follow the instructions in /usr/share/doc/wordpress/README.Debian. Rules copied from an unrelated tarball installation may not match Debian’s helper scripts or paths.
The Bottom Line
For a predictable Debian deployment, install the packaged WordPress stack, harden MariaDB, create a database-scoped application user, map Apache to /usr/share/wordpress and /var/lib/wordpress/wp-content, add the hostname-specific file under /etc/wordpress, and finish at /wp. Keep the package, PHP, Apache and MariaDB versions current, use HTTPS for production, and back up both the database and content directory.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

