Magento 2.2.2 Web Setup Wizard not visible in backend on Nginx and php7

  • You can install by command line:magento.stackexchange.com/questions/21319/… – Pramod Kharade Apr 15 '18 at 11:09
  • It is not fresh installation i've the site up and running I need to install magento upgrade and some extensions, but no web setup wizard – Ahmad Darwish Apr 15 '18 at 11:14
  • Do one thing, remove var,pub/static, generated folder and try to run upgrade command – Pramod Kharade Apr 15 '18 at 11:17
  • Even though , it won't work then check nginx log or Magento exception log – Pramod Kharade Apr 15 '18 at 11:18

this is a known issue. since early 2.0 and still not fixed in 2.3.1



     * Removes 'Web Setup Wizard' from the menu if doc root is pub and no setup url variable is specified.
     * @param Builder $subject
     * @param Menu $menu
     * @return Menu
     * @SuppressWarnings(PHPMD.UnusedFormalParameter)
     * @since 100.1.0
    public function afterGetResult(Builder $subject, Menu $menu)
        if ($this->docRootLocator->isPub()) {
        return $menu;

============================================================================== FIX:

you can:

  1. comment that function.
  2. create nginx rewrite logic.
  3. using manual redirect:


dont forget that you must have 2 doc roots for your website and setup.

## Set Magento root folder
set $MAGE_ROOT /var/www/html;
## Set main public directory /pub
root $MAGE_ROOT/pub;


location ~ ^/(setup|update) {
    root $MAGE_ROOT;
  • till then what is the work around? – Ahmad Darwish Apr 16 '18 at 4:55
  • see update answer – MagenX Apr 16 '18 at 8:28
  • I'm having an issue using apache, php7, Magento CE 2.2.6 and /setup/ (outside of /pub/). The Menu item is present in the admin menu but when clicked it redirects to 404 Not Found Whoops... Any instruction on how to debug or solve this? – Braza Apr 17 '19 at 15:17

if you get 500 error after access 'yoursite/setup' please add following code after first php tag

ini_set('display_errors', 1); ini_set('memory_limit', '2000M');

It will show you error. In my case I use redis to store cache, it causes the issue, I have to change session to file:

'session' => [ 'save' => 'files' ],

In my case, I comment this line of code: $menu->remove('Magento_Backend::setup_wizard'); In file: vendor/magento/module-backend/Model/Setup/MenuBuilder.php Then get 500 error. I resolved 500 error as the way above.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.