Overview
You can manually remove and replace specific hacked content in your WordPress site instead of completely replacing all your site files. This approach isn’t recommended, though, since it’s much easier to miss infected files this way.
If you're not comfortable fixing your WordPress site on your own, you can request DreamHost's Hacked Site Repair (a professional malware removal service). DreamHost experts will access your account and make the necessary repairs to get you back online quickly. See the Terms of Service page for more information.
.htaccess file
Many hackers insert code into the standard WordPress .htaccess file. The best thing to do is to completely remove the old, hacked .htaccess and generate a new one:
- Log into your server via FTP.
- Make sure your FTP client is set to view hidden files.
- Delete the old hacked .htaccess file (if it exists).
- In your WordPress Dashboard, go to Settings > Permalinks and re-save its permalink settings.
- The direct URL for the page is https://example.com/wp-admin/options-permalink.php (replace example.com with your WordPress site).
- This re-creates the base .htaccess.
- If you have the WP Super Cache plugin installed, view the following article:
How do I handle unused installs?
If you have an old install that you don't use, either upgrade it to make it secure or (even better) remove it completely.
How do I upgrade WordPress using the DreamHost WordPress installer?
All DreamHost WordPress installs in the panel are always set to update automatically (unless you specifically turn it off).
How do I upgrade WordPress in the WordPress dashboard?
- If there is a new version of WordPress, there is a notice on every screen that an upgrade is available:
- To update, click on Updates in the left-hand column.
How do I upgrade WordPress via SSH?
You can also upgrade WordPress via SSH. View the WordPress wp-cli article for further details.
How do I delete a WordPress install in the DreamHost panel?
View the Delete a DreamHost WordPress install article for details on how to completely remove and delete all files associated with a WordPress installation.
If you have the old WordPress install at example.com and another site at example.com/othersite/, clicking the Delete all Files button will remove everything including the non-WordPress site at example.com/othersite.
How do I delete WordPress using FTP?
- Make sure your FTP client is set up to view hidden files.
- Delete all files beginning with wp-.
- Delete all directories beginning with wp-.
- Delete the following files (if present):
- .htaccess
- index.php
- xmlrpc.php
- readme.html
- license.txt
At this point, there should be no remaining items in the directory but files you have uploaded. If there are files still there that you do not recognize, examine them carefully as they may be files placed there by a hacker. If you are certain that you do not want these files, you can delete them.
How do I delete a WordPress install using SSH?
- Log into your server via SSH.
- Navigate to your WordPress install directory.
- Run the following command all on one line. This deletes all WordPress files:
[server]$ rm wp-*;rm .htaccess;rm index.php;rm xmlrpc.php;rm readme.html;rm license.txt;rm -R wp-*
This command permanently deletes all files and there is no way to retrieve them once the command has ran. Make sure you wish to permanently delete all WordPress files before running this command.
How do I manually manage plugins?
It’s very important to always keep your plugins up to date. This limits the possibility of getting hacked. View the following article for instructions on how to keep your plugins updated:
How do I update plugins via SSH?
You can use the WP CLI interface to update plugins via SSH. View the following page for further details and examples:
How do I disable plugins via FTP?
You can also disable plugins via FTP. View the following article for instructions:
How do I keep my theme up to date?
View the following article for instructions on how to keep your theme up to date: