Describe the bug
PS 1.7.5 installation fails with a 504 Gateway Timeout on Fedora 29, PHP 7.2.14, Apache 2.4.38, MariaDB 10.3.11
To Reproduce
Download prestashop_1.7.5.0.zip and unpack in HOME/new_shop
Visit https://x.x.x/HOME/new_shop
Follow steps through local database setup (127.0.0.1) and test database connection successfully.
Click Next.
Long delay stuck at 12% followed by 504 Gateway Timeout error.
Screenshots
PS Error & phpMyAdmin configuration block:
Additionnal information
PrestaShop version: 1.7.5
PHP version: 7.2.14
MariaDB version: 10.3.11
A total of 227 tables were created in the database (ps_access through ps_zone_shop), but all tables appear to be empty, including ps_configuration so I'm not sure it is even getting as far as loading sample product information.
I had previously initialized PS 1.7.5 successfully under Fedora 28 with PHP 7.2 and the latest MariaDB version, but recently upgraded to the latest Fedora release. Then I needed to start my PrestaShop installation over again in preparation for converting/re-implementing a PrestaShop 1.4 installation. This time I could not complete the installation. None of my previous MariaDB, Apache or php.ini files have been modified since before the upgrade from Fedora 28 to Fedora 29.
My default Apache installation apparently uses the Fast CGI proxy. I have been able to evade the timeout issue by creating an Apache configuration file: /etc/httpd/conf.d/custom.conf which contains
<IfModule proxy_fcgi_module>
timeout 120
</IfModule>
This doubles the default timeout of 60s. I have not tried to narrow down how much extra time is actually needed.
However, anyone trying to install PrestaShop on a shared hosting package may not have the option of changing the timeout. It would be far better to evade this issue in the first place.
Hi @ivordurham,
Thanks for your report.
To install PrestaShop, we need to set memory_limit to "128M", it is required, you can follow this link.
Also, you can follow this link: https://github.com/PrestaShop/php-ps-info
phppsinfo file provides an equivalent to the phpinfo() function that reports PrestaShop Requirements information about the PHP/MySQL/Apache environment and offers suggestions for improvement.
About your issue, since it is fixed, can I close the issue?
Thanks!
My installation meets all of the requires shown by phppsinfo.php.
The issue is the time that the installation takes. On my development system, the Fast CGI interface had a default execution time limit of 60 seconds although my PHP max_execution_time was 90 seconds. The Fast CGI timeout was the error reported. On a shared hosting package at, say, hostgator.com (where I managed multiple websites), it is possible to modify the php.ini file, but not the Apache/PHP interface timeout. So my concern is that the installation time may be exceeded for other users who are using shared hosting packages where they cannot increase the execution time limit of the web server/PHP interface.
Although I am able to engineer a workaround on my development system, others may not be able to do so. So the open issue, I think, is whether the installation is taking longer than expected and can that time be reduced so that installation on shared hosting packages is more likely to work. Until those questions have been answered, I’d recommend leaving the issue open, but at a low priority.
From: khouloudbelguith notifications@github.com
Sent: Monday, February 18, 2019 12:15 AM
To: PrestaShop/PrestaShop PrestaShop@noreply.github.com
Cc: ivordurham ivor.durham@ivor.cc; Mention mention@noreply.github.com
Subject: Re: [PrestaShop/PrestaShop] PS 1.7.5 database initialization fails with 504 Gateway Timeout error (#12599)
Hi @ivordurham https://github.com/ivordurham ,
Thanks for your report.
To install PrestaShop, we need to set memory_limit to "128M", it is required, you can follow this link https://www.prestashop.com/en/system-requirements .
Also, you can follow this link: https://github.com/PrestaShop/php-ps-info
phppsinfo file provides an equivalent to the phpinfo() function that reports PrestaShop Requirements information about the PHP/MySQL/Apache environment and offers suggestions for improvement.
About your issue, since it is fixed, can I close the issue?
Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/PrestaShop/PrestaShop/issues/12599#issuecomment-464629710 , or mute the thread https://github.com/notifications/unsubscribe-auth/AGSbYDXNN1F4MMj09vuh-E4gbcfk6QdAks5vOmEQgaJpZM4a-kEK . https://github.com/notifications/beacon/AGSbYC67jzxEy_acaVQsWfhEeSKkoCr9ks5vOmEQgaJpZM4a-kEK.gif
Hi @ivordurham,
Thanks for these clarifications.
I tried with nginx, I edited the file /etc/nginx/nginx.conf where I set fastcgi_read_timeout 120;
When I tried to install PS1751 for example, I have "504 Gateway Time-out"

But, if I edit the fastcgi_read_timeout 120; to fastcgi_read_timeout 600; => the shop is successfully installed
@marion what do you think?
Thanks!
Let's ask to a dev @PrestaShop/prestashop-core-developers
Yes, you need to change your fastcgi_read_timeout because this is specific to nginx.
In my case, yes I can confirm this when I use fastcgi_read_timeout 600; => the shop is successfully installed
Thanks!
Note: If a user tries to install on a shared hosting package, they will not have the option of changing the Fast CGI interface timeout because that will be set by the hosting company. I have to believe that the majority of installations will be on the least expensive hosting packages, which will be shared packages, so closing this because the minority of users can adjust the timeout seems like a mistake.
i just use prestashop today, i meet the same issue, my environment is :
·MAMP Pro use nginx
·PHP 7.2.7
·MYSQL 5.7
i try to set nginx fastcgi_read_timeout to 1000;
like this:
fastcgi_connect_timeout 75;
fastcgi_read_timeout 1000;
fastcgi_send_timeout 1000;

then it works!
Most helpful comment
i just use prestashop today, i meet the same issue, my environment is :
·MAMP Pro use nginx
·PHP 7.2.7
·MYSQL 5.7
i try to set nginx fastcgi_read_timeout to 1000;
like this:
fastcgi_connect_timeout 75;
fastcgi_read_timeout 1000;
fastcgi_send_timeout 1000;
then it works!