Last Updated: 17 April 2018
By Maynard Paton
Welcome to Part 15 of Installing Sendy and Virtualmin on Amazon Web Services (AWS).
This page describes how to install Sendy on your AWS server. (Source: Sendy)
Before You Start:
Part 15 involves transferring files from your computer to your AWS server through a Secure File Transfer Protocol (SFTP) client. This guide uses Cyberduck, although FileZilla is a popular alternative.
You must have SFTP software installed on your computer to complete these instructions. Click here to read Getting Started With Cyberduck.
Here are the steps to follow
1) On your computer, navigate to Your Unzipped Sendy Code Folder, and then navigate to the includes/config.php file:
2) Right-click the config.php file and select Open With TextEdit:
3) Edit the file as follows:
The URL within the APP_PATH line should be replaced with Your Sendy Installation URL (including the https:// prefix but without a trailing slash ( / )).
$dbHost should be set to localhost
$dbUser should be set to Your Chosen Subdomain
$dbPass should be set to the Sendy database password retrieved during Part 14
$dbName should be set to Your Chosen Subdomain
It is vital to keep the straight apostrophes ( ' ) when amending these five lines. Sendy will not work if 'smart' apostrophes are used.
The edited file for the purposes of this guide looks like this:
4) Save the config.php file:
5) Within Cyberduck, select File then Open Connection…:
6) Complete the login details as follows:
Server: set to the Elastic IP address created during Part 4
Port: set to 22
Username: set to Your Chosen Subdomain
Password: set to the Administration password set during Part 9
Select Add to Keychain to save the login details to your computer. Then click Connect.
7) You may receive a ‘fingerprint’ message:
Select Always and click Allow.
8) You should then connect to the home/Your Chosen Subdomain directory:
Navigate to the home/Your Chosen Subdomain/public_html folder.
9) Within the home/Your Chosen Subdomain/public_html folder, right-click and then select Upload…:
10) Within Cyberduck, navigate to Your Unzipped Sendy Code Folder on your computer.
Ensure Show Hidden Files is NOT selected.
Press CTRL + A to select all the Sendy files and folders:
Then click Upload.
11) A new Transfers window should appear within Cyberduck. The files will be uploaded and you should eventually see the Upload complete message:
All the Sendy files and folders will now appear within the home/Your Chosen Subdomain/public_html folder. If need be, click the Refresh button:
Close the Transfers window.
12) Still within Cyberduck and the home/Your Chosen Subdomain/public_html folder, right-click and then select Upload…:
13) Within Cyberduck, navigate to Your Unzipped Sendy Code Folder on your computer.
Ensure Show Hidden Files is SELECTED.
Select the .htaccess file:
Then click Upload.
14) A new Transfers window should appear within Cyberduck. The file will be uploaded and you should then see the Upload complete message:
The .htaccess file will now appear within the home/Your Chosen Subdomain/public_html folder.
Close the Transfers window.
15) Still within Cyberduck and the home/Your Chosen Subdomain/public_html folder, navigate to the uploads folder, right click and select Info:
16) Select the Permissions tab, and UNIX Permissions should currently be set to 755 or 775:
17) Change UNIX Permissions to 777:
Then click Apply changes recursively.
18) Click Continue to confirm:
19) Within your browser, navigate to Your Sendy Installation URL.
The Install Sendy page should appear:
If an error message appears instead of the Install Sendy page, the problem is often due to incorrect settings within the /includes/config.php file. The Sendy website offers comprehensive troubleshooting tips.
a) The Server compatibility checklist will warn mod_rewrite is not enabled. mod_rewrite is an Apache module that was not installed by Virtualmin on your AWS server.
However, the Nginx configuration performed within Part 11 replaces the mod_rewrite function. The Server compatibility checklist checks only for mod_rewrite. Sendy will run normally without mod_rewrite but with the correct Nginx configuration.
b) Your browser should show Secure or similar, and the https:// prefix to Your Sendy Installation URL.
20) Complete the Install Sendy details as follows:
License key: set to the license key supplied to you by Sendy at the time of purchase
Company: set to your company, name or website
Name: set to your company, name or website
Email: set to your email (you will need this in step 21 below)
Password: (Enter a password) (you will need this in step 21 below)
Set an appropriate timezone.
(Note: Company, Name, Email, Password and Timezone can all be changed later.)
Leave the two AWS fields blank for now.
Click Install Now.
21) The Sendy Login page should appear:
22) Sendy should appear with an Amazon SES Quota message:
23) All done!
If you have any questions or comments about this page, please let me know so I can keep this website as helpful as possible.
(Want to learn more? Click here to visit the full website index.)
A Twitter person told me about Sendy. It's a PHP app that you host yourself. It fronts Amazon's Simple Email Service (SES), which is dirt cheap for email. The app is REALLY polished and just lovely.
It's $59 to buy, but they said on their site: "If you encounter problems, we will help you. If it doesn't work out, we'll refund you." That matters to me, so I bought it on the spot.
MailChimp 'Disruptor'. $59 One-Off Fee. Full Refund Available.