views:

91

answers:

1

Hey Guys, I'm confused about the problem and not sure if I can provide enough details.

I have a php app built on Zend framework which I've successfully deployed on other hosting companies. I am now trying to move to Amazon EC2

I moved all my code and set my domain to point to the IP address. So far so good.

Now when I access my home page say www.example.com - everything looks good - The home page opens up which means the IndexController is being called and the index method is properly executed which pulls data from the database and displays it in the index.phtml page.

So this lets me to believe that everything is working fine. But every link I click on the home page whether its a simple contact us link - or any other action that I directly try to call even through the URL results in

404 Not Found
The requested URL /user/add was not found on this server.
Apache/2.2.9 (Fedora) Server at www.example.com Port 80

The interesting thing is the home page opens up fine when I call www.example.com but when I give the entire path which is www.example.com/index/index - I get the same above error.

I have checked the logs and there are no errors. Has anyone encountered something similar or have any idea if I'm missing a simple step or something like rewrite rule maybe.

Its running on LAMP

Any ideas Thanks

+2  A: 

Sounds like you're missing the proper rewrite rules.

1) Is your project's .htaccess file in place on the EC2 instance?

2) Is the apache configuration such that it will respond to stuff in .htaccess (AllowOverride all)?

timdev
Thankyou Timdev - the issue was with Apache Setting. AllowOverride was set to None - Appreciate your help - thanks
Gublooo
No problem. You might also consider moving the stuff in .htaccess into your httpd.conf files, and setting AllowOverride back to none. That's arguably more secure, and saves Apache the trouble of looking for and processing .htaccess files. So it's definitely preferable in a production environment.
timdev
Thanks for the tip - will definitely take care of that
Gublooo