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/… Commented Apr 15, 2018 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 Commented Apr 15, 2018 at 11:14
  • Do one thing, remove var,pub/static, generated folder and try to run upgrade command Commented Apr 15, 2018 at 11:17
  • Even though , it won't work then check nginx log or Magento exception log Commented Apr 15, 2018 at 11:18

2 Answers 2


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? Commented Apr 16, 2018 at 4:55
  • see update answer
    – MagenX
    Commented Apr 16, 2018 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
    Commented Apr 17, 2019 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 and acknowledge you have read our privacy policy.

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