OVERVIEW
LAMP is an open source Web development platform that uses Linux as the operating system, Apache as the Web server, MySQL as the relational database management system and PHP as the object-oriented scripting language. Because the platform has four layers, LAMP is sometimes referred to as a LAMP stack. Stacks can be built on different operating systems.
LAMP stands for Linux, Apache, MySQL and PHP, and each one of them adds something unique to the development of high-performance web applications.
IOanyT Innovations provides a complete PHP, MySQL, phpMyAdmin and Apache development environment for Amazon Linux / Ubuntu / Debian / RHEL that can be launched in one click
GOALS
One-click launch
Easy configurable AMI with pre-installed LAMP and phpMyAdmin
INSTALLATION VIA AWS MARKETPLACE
Kindly click on the below link to install the server via AWS Marketplace:
GET STARTED
LAMP (Linux, Apache, MySQL, PHP/Perl/Python) is an acronym denoting an open source of common software's for many of the web's most popular applications that are typically installed together to enable servers to deploy and host web apps and websites. You’ll need to have an Ubuntu 18.04 server with a non-root sudo-enabled user account and a basic firewall configured
To verify the installation, follow the below instructions
Open browser
In the address bar of the browser, type http://<your-ip-address>
You will see the Apache2 default page (see screenshot below)
Step 1. Connect to SSH
In a terminal window, use the ssh command to connect to the instance. You specify the user name for your instance, and the public DNS name or IPv6 address for your instance, the path and file name of the private key (.pem).
ssh ubuntu@publicIP -i [Path of key pair file]
If it shows access denied message run the following command , then run the above command again to connect via ssh.
chmod 400 [Path of key pair file]
Step 2. Test your PHP Installation
If your LAMP server is installed and running, and your file permissions are set correctly, your user account should be able to create a PHP file in the /var/www/html directory that is available from the internet.
To test your PHP Installation
In a web browser, type the URL of the file that is already created. This URL is the public DNS address of your instance followed by a forward slash and the file name.
http://your-ip-address/info.php
You should see the following php information page:
Step 3. Access AWS Instance ID
For an EC2 instance (either a standalone instance or a part of a stack), or a database instance, you can find the ID in a few steps below
In EC2 console, In the navigation pane, select Instances. The Instances page opens.
Click the instance that you want the ID for. The instance details page opens and displays the ID and IP address.
Step 4. Access PhpMyAdmin
phpMyAdmin is a PHP-based application intended to handle the administration of MySQL over the Web.
To verify the installation, follow the below instructions
Open browser
In the address bar of the browser, type http://<your-ip-address>/phpMyAdmin
You will see the phpMyAdmin default page (see screenshot below)
Default Login ID-root and password - <AWS Instance ID>
Step 5. Activate SSL Encryption
Follow the steps to activate SSL Encryption on the system
1. Go to path /etc/httpd/conf/httpd.conf
2. Locate the "Listen 80" directive
3. Edit the below lines and replace "example" with your Domain name
<VirtualHost *:80>
DocumentRoot "/var/www/html"
ServerName "example.com"
ServerAlias "www.example.com"
</VirtualHost>
4. Now run the command to restart the HTTPD service
sudo systemctl restart httpd
5. Now run Certbot with below command
sudo certbot
6. At the prompt Enter email address (used for urgent renewal and security notices),
and press Enter.
7. Agree to the Let's Encrypt Terms of Service at the prompt. Enter "A"
--------------------------------------------------------------------------
Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory
--------------------------------------------------------------------------(A)gree/(C)ancel: A
8. Certbot displays the Common Name and Subject Alternative Name (SAN) that you provided in the VirtualHost block.
Which names would you like to activate HTTPS for?
1: example.com
2: www.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or
leave input blank to select all options shown (Enter 'c' to cancel):
9.Certbot displays the following output as it creates certificates and configures Apache. It then prompts you about redirecting HTTP queries to HTTPS.
Obtaining a new certificate Performing the following challenges:
http-01 challenge for example.com
http-01 challenge for www.example.com
Waiting for verification...
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
10. Certbot completes the configuration of Apache and reports success and other information
Congratulations! You have successfully enabled https://example.com and https://www.example.com
Comments