Configure the store

First steps

  1. Log in to the Magento server as, or switch to, a user who has permissions to write to the Magento file system. One way to do this is to switch to the Magento file system owner.

    If you use the bash shell, you can also use the following syntax to switch to the Magento file system owner and enter the command at the same time:

    su <Magento file system owner> -s /bin/bash -c <command>
    

    If the Magento file system owner does not allow logins you can do the following:

    sudo -u <Magento file system owner>  <command>
    
  2. To run Magento commands from any directory, add <your Magento install dir>/bin to your system PATH.

    Because shells have differing syntax, consult a reference like unix.stackexchange.com.

    bash shell example for CentOS:

    export PATH=$PATH:/var/www/html/magento2/bin
    

You can also run the commands in the following ways:

  • cd <your Magento install dir>/bin and run them as ./magento <command name>
  • php <your Magento install dir>/bin/magento <command name>

<your Magento install dir> is a subdirectory of your web server's docroot. Need help locating the docroot? Click here.

In addition to the command arguments discussed here, see Common arguments.

Prerequisites

Before you run this command, you must do all of the following or you must install the Magento software:

Completely secure installation

To use Secure Sockets Layer (SSL), also referred to as HTTPS, for both the Magento Admin and the storefront, you must set all of the following parameters:

  • --use-secure: Set to 1
  • --base-url-secure: Set to a secure URL (that is, starting with https://)
  • --use-secure-admin Set to 1

More details about these parameters can be found later in this topic.

Configure the store

Command usage:

magento setup:store-config:set [--<parameter_name>=<value>, ...]

where the following table defines parameters and values.

Name Value Required?
--base-url Base URL to use to access your Magento Admin and storefront in any of the following formats:
  • http[s]://<host or ip>/<your Magento install dir>/. Note: The scheme (http:// or https://) and a trailing slash are both required. <your Magento install dir> is the docroot-relative path in which to install the Magento software. Depending on how you set up your web server and virtual hosts, the path might be magento2 or it might be blank. To access Magento on localhost, you can use http://127.0.0.1/<your Magento install dir>/.
  • {{base_url}} which represents a base URL defined by a virtual host setting or by a virtualization environment like Docker. For example, if you set up a virtual host for Magento with the host name magento.example.com, you can install the Magento software with --base-url={{base_url}} and access the Magento Admin with a URL like http://magento.example.com/admin.
No
--language

Language code to use in the Admin and storefront.

(If you have not done so already, you can view the list of language codes by entering magento info:language:list from the bin directory.)

No
--currency

Default currency to use in the storefront.

(If you have not done so already, you can view the list of currencies by entering magento info:currency:list from the bin directory.)

No
--timezone Default time zone to use in the Admin and storefront. (If you have not done so already, you can view the list of time zones by entering magento info:timezone:list from the bin directory.) No
--use-rewrites

1 means you use web server rewrites for generated links in the storefront and Admin.

0 disables the use of web server rewrites. This is the default.

No
--use-secure

1 enables the use of Secure Sockets Layer (SSL) in storefront URLs. Make sure your web server supports SSL before you select this option.

0 disables the use of SSL with Magento. In this case, all other secure URL options are assumed to also be 0. This is the default.

No
--base-url-secure Secure base URL to use to access your Magento Admin and storefront in the following format: http[s]://<host or ip>/<your Magento install dir>/ No
--use-secure-admin

1 means you use SSL to access the Magento Admin. Make sure your web server supports SSL before you select this option.

0 means you do not use SSL with the Admin. This is the default.

No