Wordpress white screen when launching from AWS EC2 AMI - php

I've created an AWS EC2 instance with a Wordpress site running on it. The MySQL database is on Amazon RDS and everything works perfectly. I've created an image from the EC2 instance and a snapshot from the RDS instance and attempted to bring up the site using the new instances but I keep getting a blank white screen. I can connect to the new RDS instance using MySQL Workbench so it looks like it's running. I can open up a phpinfo.php page on the EC2 instance so it looks like the web server is running. I've modified the wp-config.php file to point to the new RDS instance and changed the DOMAIN_CURRENT_SITE to point to the new EC2 instance. Still getting a blank screen. Any other options I can try? I've set WP_DEBUG to true but I don't get any error messages. Any help would be greatly appreciated.
thanks.

In my experience White Screens are commonly database issues.
Ensure you're connecting correctly and that the WordPress database is correct.
At a guess of the most likely problem; your /wp-config.php should contain the correct database hostname instance-name.randomcode.amazon-region.rds.amazonaws.com as opposed to localhost. This is because if you're running an RDS instance for your database it's a different server and than your AWS instance. This means it's not on the AWS localhost.
For more info the AWS docs are usually somewhat helpful. You can find them here

Related

Cannot connect to Sql Server in Amazon RDS with Codeigniter

I have an application that has been developed with Codeigniter. It uses an SQL Server database, hosted in an Amazon RDS Instance.
The application is using the mssql driver (I can't change it to sqlsrv, unfortunately).
The RDS instance is ok, I tried connecting to the database from an SQL Server client, and everything works perfect, but when I try to connect it in the CI application, I get the classic "Unable to connect to your database server using the provided settings." error.
Is there a way to have a more descriptive error thrown by CI? I have lost a lot of time trying to solve this issue and I really don't know what else I should look.
Notes:
This was working fine some days ago. I had to make a copy of the CI app (which is hosted on an Amazon EC2 instance). I shared the AMI to a different AWS account, and created a new instance with it, but didn't change anything in the volume. Everything has been exactly copied from one place to the other.
Php info tells me that the mssql driver is there and it is correct.
The Security Groups in the RDS instance and the EC2 instance, are open to the world (I deleted all the restrictions in order to see if that was the problem)
I will really appreciate any kind of help.

Issue running an app on a cloned AWS EC2 instance

I have an application (php/node.js/mysql) running on a fully configured EC2 instance, using elastic beanstalk connected to an RDS DB. I tried to recreate that instance and run a test application and it didn't work, I though it might be something with the config of the instance, so I cloned the instance that is running correctly and tried to run the test app (which is exactly like the prod app) and I get this error: DNS_PROBE_FINISHED_NXDOMAIN
It has nothing to do with my internet connection, which is working fine. A couple of facts:
1- when I run the app on the instance I created, it does load the index.html page, but does not connect to any other page (this is a php/node.js/mysql app), and I get error 404.
2- when I try to load the url in the second (cloned) case, the subdomain I created, receives a www from the browser and gives me the error above. This could be some kind of wrong config on my godaddy, but it gives me no error when I try it on the created instance.
I'm having a hard time trying to figure this out, can someone shed some light pls?
Thanks all!

Deploying PHP application using AWS Elastic Beanstalk

I am very new to AWS. I am trying to deploy my php application to AWS. I created an environment and then uploaded and deployed all files (including .sql) in zip format. When I am trying to access my website using URL it doesn't show anything. When I tried viewing page source, it showed database connectivity error?
Any help would be appreciated.
Thank you.
For Database connection,
You need create a new environment either using RDS or on the instance.
You can set up RDS using Beanstalk.
Refer :http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_PHP.rds.html#create_deploy_PHP.rds.newDB
Still you will have much to manually configure to load your existing data to RDS or to the instance.
Hope it Helps.. :)
I had written a blog on a similar use case. I also have a screencast on the same. Can you follow this and see if this helps:
http://www.tothenew.com/blog/aws-elastic-beanstalk-php/
I have deployed a wordpress PHP website. Look what you need is a new RDS or an old RDS instance or Database on an EC2 server and have to give PHP app that endpoint and port.

Are there any steps on how to set up an Apache Multi-AZ Amazon RDS database instance and using S3?

I am trying to set up a Linux/Apache Drupal Website using a Multi-AZ Amazon RDS database instance found in this link:
https://aws.amazon.com/cloudformation/aws-cloudformation-templates/
So far, I have launched the Drupal "Highly Available Web Server with Multi-AZ Amazon RDS database instance and using S3 for storing file content" stack using the link below and it has created my two instances, a Load Balancer and a DB.
I have followed all the steps up until the "Installing and Configuring Drupal" section in the following link thinking that I would just have to run through all the steps for each instance and it would then allow me to view my website on a browser:
http://www.imamuseum.org/cc-mcn09.pdf
My conf file is set up in the ect/httpd/conf.d folder in its own file.
Does anyone have any experience on this?
Please let me know if you have any questions.
Thanks,

Laravel 4 Connect to EC2 MySQL from remote domain

Not sure if what I am attempting to do is possible or not. I just launched my very first EC2 instance running Ubuntu 12.04 and successfully installed Laravel 4. I have the database working just fine on the EC2 instance and I am able to connect to it with MySQL Workbench on my local machine using a .pem SSH key.
I will be using EC2 to handle certain aspects of a product that I am developing to ensure improved reliability - client side users will be interacting with this primarily through CURL. I want to be able to have my non-EC2 website, also running Laravel 4, use the MySQL database that I set up on my EC2 instance.
I tried changing my app/config/database.php file to include the EC2 instance IP address and MySQL credentials, when Laravel attempts to connect it returns a timeout error.
I modified my.cfn and commented out bind-address = 127.0.0.1, I do not seem to have the skip-network that I have seen mentioned. Still no joy.
Any suggestions?
In side MySQL (PhpMyAdmin if you installed it) -> Users overview -> Edit your user with Host is
%
That is mean, you can connect to MySQL in anywhere with command
mysql_connect($IpOfYourHost, $UserAbove, $Password)
Maybe this helps you. :)
Resolved
I changed bind-address to 0.0.0.0, created a new MySQL user - 'user'#'%', and had my host whitelist the IP. Done!

Categories