Servers

Amazon AWS Lightsail – WP Ghost Setup

Apache Server

Install and Setup WP Ghost

  1. First, install the WP Ghost plugin on your website.
  2. After you setup the plugin in Safe Mode or Ghost Mode click save to generate rewrite rules for the new paths.
  3. Copy the rewrite rules from WP Ghost notification into Bitnamy config file.

AWS Lightsail (Bitnami) doesn’t enable overrides using .htaccess by default, and the structure of the Apache config files is slightly different.

Bitnami uses “htaccess.conf” files by default instead of “.htaccess” files for security and performance reasons. You can find more info at https://docs.bitnami.com/general/apps/redmine/administration/use-htaccess/

Add Rewrite Rules in Config File

If you found the config file (it’s usually located at /home/bitnami/apps/wordpress/conf/httpd-app.conf) you should see something like the following code.  Add the code generated by WP Ghost in the .htaccess file.

<Directory "/opt/bitnami/apps/wordpress/htdocs">
Options +MultiViews +FollowSymLinks
AllowOverride None

#####################################
# Example of WP Ghost code generated. Change it with the real code
RewriteRule ^([_0-9a-zA-Z-]+/)?admin/ajax(.*) /wp-admin/admin-ajax.php$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?admin/(.*) /wp-admin/$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?login(.*) /wp-login.php$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?login/(.*) /wp-login.php$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?modules/(.*) /wp-content/plugins/$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?assets/(.*) /wp-content/themes/$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?storage/(.*) /wp-content/uploads/$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?core/(.*) /wp-content/$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?lib/(.*) /wp-includes/$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?comments/(.*) /wp-comments-post.php$2 [QSA,L]
RewriteRule ^([_0-9a-zA-Z-]+/)?writer/(.*) /author/$2 [QSA,L]
#####################################

#This is the code from your .htaccess file where the wordpress is installed
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [S=1]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
##################################### End of WordPress code

<IfDefine USE_PHP_FPM>
<FilesMatch \.php>
SetHandler "proxy:fcgi://wordpress-fpm/"
</FilesMatch>
</IfDefine>

</Directory>

Activate Allowoverride ALL

If it is easier, you can enable “.htaccess”. To enable it you should add “Allowoverride ALL” to your Directories configuration in your VirtualHosts (not directly in the VirtualHosts).

What you have to do is to change from AllowOverride None to AllowOverride All 

The VirtualHost configuration should be something like this:

<Directory "/opt/bitnami/apps/wordpress/htdocs">
Options +MultiViews +FollowSymLinks
AllowOverride All

<IfDefine USE_PHP_FPM>
<FilesMatch \.php >
SetHandler "proxy:fcgi://wordpress-fpm/"
</FilesMatch>
</IfDefine>

</Directory>

Restart Apache Server

Restart the Apache server to load the new path rewrite rules.

sudo /opt/bitnami/ctlscript.sh restart apache

Frontend Login Test

Run the Frontend Login Test in WP Ghost and check if the frontend and login pages are loading correctly.

If everything loads fine in Frontend, click “Yes, it’s working”. Otherwise, click “No, abort” to roll back to previous settings.

John Darrel

Change Database Prefix in WordPress

Because hackers often use bots to search for security flaws in your website, it is…

12 months

Customize WordPress Uploads Directory

The easiest way to change the default media uploads path is to use the WP…

12 months

WP Ghost and WP Rocket Cache

To hide all CSS and JS you need to follow the steps to Combine the…

12 months

Why is website security important?

https://youtu.be/6ylhojSi-_E In this video, we’ll explore why website security matters and what can happen if…

12 months

Is WordPress Website Easily Hacked?

The security of your WordPress site depends on multiple factors, such as the strength of…

12 months

Setting up Two-Factor Authentication (2FA) for WordPress Using Mobile Apps

When you enable two-factor authentication (2FA) for your WordPress website, it adds an extra layer…

12 months