Daric
Daric

Reputation: 16769

Error 500 - Internal server error And Cart is not showing products with success message Magento

I am keep receiving this error on my magento pages in frontend and back-end.

Error 500 - Internal server error An internal server error has occured! Please try again later.

In front-end all the pages working fine but when I hit proceed to checkout it is showing this error and the url is /index.php/checkout/onepage/.

My cart is also not showing products in it but when I say add to cart. It shows an empty cart with the message that the product has been added in to cart and button to proceed to checkout or continue shopping. enter image description here

What are the causes? Ho do I go about this?

Upvotes: 0

Views: 6180

Answers (2)

ʍǝɥʇɐɯ
ʍǝɥʇɐɯ

Reputation: 4022

First things first.

The first thing to check are the file permissions.

If you have ssh access then go to your public_html folder and typre 'chmod -R ugoa+rw *' to give read/write access to every other user (including your webserver user, e.g. www-data).

This should not expose your files to others in a shared hosting environment that uses #cpanel# due to the way that #cpanel# works.

I note from your URL that you are not using re-writes, you might want to enable these too as it is generally best practice to not have the 'index.php'

Upvotes: 0

Rem.co
Rem.co

Reputation: 3821

It's hard to say what's going on based solely on just a 500.

Magento has this behaviour of shielding the real issue at hand to avoid exposing any vulnerabilities to end-users. In order to find out what's going on you'd have to get the real error report.

I can think of four ways to find out what's going on:

  1. Check the Magento logs, you can find these in MAGENTO_ROOT/var/log
  2. Check the error report that has been generated for this error. I'm not 100% sure if all Magento versions generate these, they might have to be enabled somewhere. If they are being made, they will appear in MAGENTO_ROOT/var/report
  3. Check your web server error logs if you have access to those. Usually found under /var/log or a directory under your account if you are on a shared hosing environment.
  4. Enable error logging in your PHP configuration. Run a <?php phpinfo(); ?> to see what php.ini your server is using, edit that file, and set log_errors = On and define a log path (which requires write permissions for the account that PHP runs under) with the error_log = /path/to/php.error.log directive.

Upvotes: 3

Related Questions