<h1 dir="auto">Feature request</h1>
<h2 dir="auto">Is your feature request related to a problem? Please describe.</h2>
<p dir="auto">/[entity] =&gt; matched as all values</p>
<p dir="auto">and always i add strong check conditions in gip</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="Gender.getInitialProps = async ({ query }) =&gt; {
  if (!['mens', 'womens', 'kids'].includes(query.gender)) {
    return { errorCode: 404 };
   }
or
 if (!allowedGroupCatalogs.includes(query.groupId)) {
    return { errorCode: 404, items: {} }
  }

and added conditions in client-side page
  if (errorCode) {
    return &lt;Error statusCode={errorCode} /&gt;;
  }
"><pre class="notranslate"><code class="notranslate">Gender.getInitialProps = async ({ query }) =&gt; {
  if (!['mens', 'womens', 'kids'].includes(query.gender)) {
    return { errorCode: 404 };
   }
or
 if (!allowedGroupCatalogs.includes(query.groupId)) {
    return { errorCode: 404, items: {} }
  }

and added conditions in client-side page
  if (errorCode) {
    return &lt;Error statusCode={errorCode} /&gt;;
  }

</code></pre></div>
<p dir="auto">I want to have a chance, use to that example</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="/:entity(allowedValue1|allowedvalue2)"><pre class="notranslate"><code class="notranslate">/:entity(allowedValue1|allowedvalue2)
</code></pre></div>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have searched the <a href="https://github.com/zeit/next.js/issues">issues</a> of this repository and believe that this is not a duplicate.</li>
</ul>
<h2 dir="auto">Expected Behavior</h2>
<p dir="auto">I switched my React based landing page to use next.js for easy server-side rendering for SEO - that works great by the way, amazing work!</p>
<p dir="auto">The problem is, I was using a JSON-LD component which simply rendered an object to a <code class="notranslate">&lt;script&gt;</code>.</p>
<p dir="auto">Here's the code:</p>
<p dir="auto"><a href="https://github.com/Southclaws/homepage/blob/55fc7d79c494a97134a419b0e9c84ebd44e2389e/pages/components/JsonLD.js#L4">https://github.com/Southclaws/homepage/blob/55fc7d79c494a97134a419b0e9c84ebd44e2389e/pages/components/JsonLD.js#L4</a></p>
<p dir="auto">I've also tried <code class="notranslate">dangerouslySetInnerHTML</code>, same result though:</p>
<p dir="auto"><a href="https://github.com/Southclaws/homepage/blob/bf0db23726847b56d884f261e9064f1800adaa36/pages/components/JsonLD.js#L4">https://github.com/Southclaws/homepage/blob/bf0db23726847b56d884f261e9064f1800adaa36/pages/components/JsonLD.js#L4</a></p>
<p dir="auto">and the expected output is <a href="https://github.com/Southclaws/homepage/blob/55fc7d79c494a97134a419b0e9c84ebd44e2389e/pages/App.js#L13-L46">this</a> JSON-LD would eventually be rendered to that tag like:</p>
<div class="highlight highlight-source-json notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="&lt;script type=&quot;application/ld+json&quot;&gt;
{
    &quot;@context&quot;: &quot;http://schema.org&quot;,
    &quot;@type&quot;: &quot;Person&quot;,
    ...
}
&lt;/script&gt;"><pre class="notranslate"><span class="pl-ii">&lt;script type="application/ld+json"&gt;</span>
{
    <span class="pl-ent">"@context"</span>: <span class="pl-s"><span class="pl-pds">"</span>http://schema.org<span class="pl-pds">"</span></span>,
    <span class="pl-ent">"@type"</span>: <span class="pl-s"><span class="pl-pds">"</span>Person<span class="pl-pds">"</span></span>,
    <span class="pl-ii">...</span>
}
<span class="pl-ii">&lt;/script&gt;</span></pre></div>
<h2 dir="auto">Current Behavior</h2>
<p dir="auto">Currently, it seems like the next.js build process is escaping the contents of this tag and it ends up looking like this:</p>
<div class="highlight highlight-source-json notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="&lt;script type=&quot;application/ld+json&quot;&gt;{
    &amp;quot;data&amp;quot;: {
        &amp;quot;@context&amp;quot;: &amp;quot;http://schema.org&amp;quot;,
        &amp;quot;@type&amp;quot;: &amp;quot;Person&amp;quot;,
..."><pre class="notranslate"><span class="pl-ii">&lt;script type="application/ld+json"&gt;{</span>
    <span class="pl-ii">&amp;quot;data&amp;quot;: {</span>
        <span class="pl-ii">&amp;quot;@context&amp;quot;: &amp;quot;http://schema.org&amp;quot;,</span>
        <span class="pl-ii">&amp;quot;@type&amp;quot;: &amp;quot;Person&amp;quot;,</span>
<span class="pl-ii">...</span></pre></div>
<h2 dir="auto">Steps to Reproduce (for bugs)</h2>
<p dir="auto">I guess the best example is the source and the actual site itself:</p>
<ul dir="auto">
<li><a href="https://github.com/Southclaws/homepage">https://github.com/Southclaws/homepage</a></li>
<li><a href="https://southcla.ws" rel="nofollow">https://southcla.ws</a></li>
</ul>
<h2 dir="auto">Context</h2>
<p dir="auto">My plan is to eventually serve the JSON-LD from github and fetch it before server rendering so I can describe the site/portfolio via a single JSON object.</p>
<p dir="auto">I'm not really sure if this functionality really matters to anyone else though or if there's a good reason for escaping it. If it's intentional, is there a way to disable it?</p>
<h2 dir="auto">Your Environment</h2>
<table role="table">
<thead>
<tr>
<th>Tech</th>
<th>Version</th>
</tr>
</thead>
<tbody>
<tr>
<td>next</td>
<td>4.1.4</td>
</tr>
<tr>
<td>node</td>
<td>v8.6.0</td>
</tr>
<tr>
<td>OS</td>
<td>OS X and Docker Node latest (9) image</td>
</tr>
<tr>
<td>browser</td>
<td>Chrome latest</td>
</tr>
</tbody>
</table>