<p>Okay I'm all set now. Turns out it was a production environment/MySQL issue, and it's cropped up before on Digital Ocean. See Brad's fix <a href="https://craftcms.stackexchange.com/questions/12084/getting-this-sql-error-group-by-incompatible-with-sql-mode-only-full-group-by/12106#">here</a>.</p>

<p>I just added</p>

<pre><code>'initSQLs' =&gt; array("SET SESSION sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';")
</code></pre>

<p>to my config/db.php and good to go.</p>

CC BY-SA 3.0
2017-03-15T13:44:18.537Z
2017-03-15T13:44:18.537Z
2017-04-13T12:51:00.200Z
Ian Ebden
<p>This is my first multi locale Craft setup and everything is cool on my local/dev environment. However running into difficulty on the production server (Digital Ocean/ServerPilot). My default (EN) version plays nice but my German locale returns a 500 when isSystemOn => 'true'. When set to false it displays the appropriate 'Unavailable' (503) template. So it looks like everything is setup fine as far as Digital Ocean, ServerPilot, domain, etc... so I'm wondering if there's something amiss in my config?</p>

<p>I have 2 "apps" setup in ServerPilot for my default (EN) and German sites. My German app contains a public folder with an index.php that contains the server path:</p>

<pre><code>$craftPath = '../../sitenamecom/craft';
</code></pre>

<p>I've also tried a full server path but the above seems to work fine anyway.</p>

<p>Then in my config/general.php I've got all the usual stuff, plus:</p>

<pre><code>// production (DE)
'sitename.de' =&gt; array(
    'backupDbOnUpdate'                  =&gt; true,
    'devMode'                           =&gt; false,
    'environmentVariables' =&gt; array(
        'baseUrl'                       =&gt; 'https://sitename.de',
        'basePath'                      =&gt; realpath(dirname(__FILE__)) . '/../../public',
    ),
    'isSystemOn'                        =&gt; false,
    'siteUrl'                           =&gt; 'https://sitename.de/',
),
</code></pre>

<p>So as I say, everything working fine on my local server but with isSystemOn set to true on production I get an Internal Server Error. Anyone got any suggestions on how best to debug this?</p>

<localization><config>
Internal Server Error on Locale
# Internal Server Error on Locale

(Asked by: username_0 on 2017-03-15)

This is my first multi locale Craft setup and everything is cool on my local/dev environment. However running into difficulty on the production server (Digital Ocean/ServerPilot). My default (EN) version plays nice but my German locale returns a 500 when isSystemOn => 'true'. When set to false it displays the appropriate 'Unavailable' (503) template. So it looks like everything is setup fine as far as Digital Ocean, ServerPilot, domain, etc... so I'm wondering if there's something amiss in my config?
I have 2 "apps" setup in ServerPilot for my default (EN) and German sites. My German app contains a public folder with an index.php that contains the server path:
$craftPath = '../../sitenamecom/craft';

I've also tried a full server path but the above seems to work fine anyway.
Then in my config/general.php I've got all the usual stuff, plus:
// production (DE)
'sitename.de' => array(
    'backupDbOnUpdate'                  => true,
    'devMode'                           => false,
    'environmentVariables' => array(
        'baseUrl'                       => 'https://sitename.de',
        'basePath'                      => realpath(dirname(__FILE__)) . '/../../public',
    ),
    'isSystemOn'                        => false,
    'siteUrl'                           => 'https://sitename.de/',
),

So as I say, everything working fine on my local server but with isSystemOn set to true on production I get an Internal Server Error. Anyone got any suggestions on how best to debug this?

**Tags:** localization, config

---

## 1 answers

### Answer by username_0 on 2017-03-15. Score: 1

Okay I'm all set now. Turns out it was a production environment/MySQL issue, and it's cropped up before on Digital Ocean. See Brad's fix here.
I just added
'initSQLs' => array("SET SESSION sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';")

to my config/db.php and good to go.


---

