TYPO3 Forge: Issueshttp://forge.typo3.org/http://forge.typo3.org/themes/typo3_forge/favicon/favicon.png?17058661692018-02-27T18:03:05ZTYPO3 Forge
Redmine TYPO3 Core - Bug #84070 (Closed): RedirectCacheService does not fallback gracefully if caching ba...http://forge.typo3.org/issues/840702018-02-27T18:03:05ZSybille Peterssypets@gmx.de
<p>Tested with 9.2.0-dev (current master).</p>
<p>If the configured caching backend (e.g. redis) fails because of a misconfiguration or downtime, TYPO3 falls back very nicely to non cached entries.</p>
<p>However the RedirectCacheService throws an exception in this case:</p>
<pre><code class="php syntaxhl" data-language="php"><span class="nc">Core</span><span class="o">:</span> <span class="nc">Exception</span> <span class="nf">handler</span> <span class="p">(</span><span class="no">WEB</span><span class="p">)</span><span class="o">:</span> <span class="nc">Uncaught</span> <span class="no">TYPO3</span> <span class="nc">Exception</span><span class="o">:</span>
<span class="k">Return</span> <span class="n">value</span> <span class="n">of</span> <span class="nc">TYPO3\CMS\Redirects\Service\RedirectCacheService</span><span class="o">::</span><span class="nf">getRedirects</span><span class="p">()</span> <span class="n">must</span> <span class="n">be</span> <span class="n">of</span> <span class="n">the</span> <span class="n">type</span> <span class="k">array</span><span class="p">,</span> <span class="n">boolean</span> <span class="n">returned</span>
<span class="o">|</span> <span class="nc">TypeError</span> <span class="n">thrown</span> <span class="n">in</span> <span class="n">file</span>
<span class="o">/<</span><span class="n">webroot</span><span class="o">>/</span><span class="n">typo3</span><span class="o">/</span><span class="n">sysext</span><span class="o">/</span><span class="n">redirects</span><span class="o">/</span><span class="nc">Classes</span><span class="o">/</span><span class="nc">Service</span><span class="o">/</span><span class="nc">RedirectCacheService</span><span class="mf">.</span><span class="n">php</span> <span class="n">in</span> <span class="n">line</span> <span class="mf">60.</span>
<span class="nc">Requested</span> <span class="no">URL</span><span class="o">:</span> <span class="n">http</span><span class="o">://</span><span class="n">localhost</span><span class="o">/</span><span class="n">index</span><span class="mf">.</span><span class="n">php</span><span class="o">?</span><span class="n">id</span><span class="o">=</span><span class="mi">1</span>
</code></pre>
<p><a href="https://github.com/TYPO3/TYPO3.CMS/blob/61df57efe9284b2a9a26612f7ef2fa1e1019c10b/typo3/sysext/redirects/Classes/Service/RedirectCacheService.php#L60" class="external">RedirectCacheService.php#60</a></p>
<a name="Steps-to-reproduce"></a>
<h2 >Steps to reproduce<a href="#Steps-to-reproduce" class="wiki-anchor">¶</a></h2>
<ol>
<li>Initial installation with "introduction package" (or without, in this case create a new page with standard root template)</li>
<li>Configure Redis as Caching backend (see configuration snippet below)</li>
<li>cause redis backend to fail by stopping the redis service, e.g. service stop redis </li>
<li>(while not logged in in backend): Load frontend pages, e.g. "Get Started" page id=1</li>
</ol>
<a name="Results"></a>
<h2 >Results<a href="#Results" class="wiki-anchor">¶</a></h2>
<p>Oops Error / Exception gets thrown.</p>
<p><img src="http://forge.typo3.org/attachments/download/33245/oops.png" alt="" loading="lazy" /></p>
<a name="Verify"></a>
<h2 >Verify<a href="#Verify" class="wiki-anchor">¶</a></h2>
<p>Test without redirect:</p>
<ol>
<li>deinstall "redirect" extension. There will be no more exceptions, even though redis still isn't available</li>
</ol>
<a name="Basic-Cache-Configuration"></a>
<h2 >Basic Cache Configuration:<a href="#Basic-Cache-Configuration" class="wiki-anchor">¶</a></h2>
<p><strong>typo3conf/AdditionalConfiguration.php:</strong><br /><pre><code class="php syntaxhl" data-language="php"><span class="cp"><?php</span>
<span class="mf">...</span>
<span class="o">@</span><span class="k">include_once</span><span class="p">(</span><span class="s1">'GeneralConfigurationCache.php'</span><span class="p">);</span>
<span class="o">@</span><span class="nf">setCacheConfigurationRedis</span><span class="p">(</span><span class="mi">2</span><span class="p">);</span>
</code></pre></p>
<p><strong>typo3conf/GeneralConfigurationCache.php:</strong></p>
<pre><code class="php syntaxhl" data-language="php"><span class="k">function</span> <span class="n">setCacheConfigurationRedis</span><span class="p">(</span><span class="nv">$database</span><span class="o">=</span><span class="kc">false</span><span class="p">,</span> <span class="nv">$names</span> <span class="o">=</span> <span class="p">[</span>
<span class="s1">'cache_pages'</span><span class="p">,</span>
<span class="s1">'cache_pagesection'</span><span class="p">,</span>
<span class="s1">'cache_hash'</span><span class="p">,</span>
<span class="s1">'cache_rootline'</span><span class="p">,</span>
<span class="s1">'cache_imagesizes'</span><span class="p">,</span>
<span class="s1">'extbase_object'</span><span class="p">,</span>
<span class="s1">'extbase_reflection'</span><span class="p">,</span>
<span class="s1">'extbase_typo3dbbackend_queries'</span><span class="p">,</span>
<span class="s1">'extbase_datamapfactory_datamap'</span><span class="p">,</span>
<span class="s1">'extbase_object'</span><span class="p">,</span>
<span class="s1">'extbase_reflection'</span>
<span class="p">]</span> <span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nv">$database</span><span class="p">)</span> <span class="p">{</span>
<span class="k">return</span><span class="p">;</span>
<span class="p">}</span>
<span class="k">foreach</span><span class="p">(</span><span class="nv">$names</span> <span class="k">as</span> <span class="nv">$name</span><span class="p">)</span> <span class="p">{</span>
<span class="nv">$GLOBALS</span><span class="p">[</span><span class="s1">'TYPO3_CONF_VARS'</span><span class="p">][</span><span class="s1">'SYS'</span><span class="p">][</span><span class="s1">'caching'</span><span class="p">][</span><span class="s1">'cacheConfigurations'</span><span class="p">][</span><span class="nv">$name</span><span class="p">][</span><span class="s1">'backend'</span><span class="p">]</span> <span class="o">=</span> <span class="nc">\TYPO3\CMS\Core\Cache\Backend\RedisBackend</span><span class="o">::</span><span class="n">class</span><span class="p">;</span>
<span class="nv">$GLOBALS</span><span class="p">[</span><span class="s1">'TYPO3_CONF_VARS'</span><span class="p">][</span><span class="s1">'SYS'</span><span class="p">][</span><span class="s1">'caching'</span><span class="p">][</span><span class="s1">'cacheConfigurations'</span><span class="p">][</span><span class="nv">$name</span><span class="p">][</span><span class="s1">'options'</span><span class="p">][</span><span class="s1">'database'</span><span class="p">]</span> <span class="o">=</span> <span class="nv">$database</span><span class="p">;</span>
<span class="c1">// problem with gzuncompress + php-redis</span>
<span class="nv">$GLOBALS</span><span class="p">[</span><span class="s1">'TYPO3_CONF_VARS'</span><span class="p">][</span><span class="s1">'SYS'</span><span class="p">][</span><span class="s1">'caching'</span><span class="p">][</span><span class="s1">'cacheConfigurations'</span><span class="p">][</span><span class="nv">$name</span><span class="p">][</span><span class="s1">'options'</span><span class="p">][</span><span class="s1">'compression'</span><span class="p">]</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre> TYPO3 Core - Bug #84010 (Closed): Checkmarks in Linkvalidator report still do not work correctlyhttp://forge.typo3.org/issues/840102018-02-22T10:40:02ZSybille Peterssypets@gmx.de
<p>Will probably happen in TYPO3 8 and 9, I am only testing with current master (9.2.0-dev)</p>
<a name="Steps-to-reproduce"></a>
<h2 >Steps to reproduce<a href="#Steps-to-reproduce" class="wiki-anchor">¶</a></h2>
<ol>
<li>Use a fresh install or reset your user settings: Click on user name in top : "user settings" : "Edit and Advanced functions" : "Reset user settings to default state" </li>
<li>Go to a page where invalid links exist</li>
<li>Info: Linkvalidator: "Check links" </li>
<li>Look at the report:</li>
</ol>
<a name="Actual-results"></a>
<h2 >Actual results<a href="#Actual-results" class="wiki-anchor">¶</a></h2>
<p>By default none of the links types will be checked in the report. However, invalid links are shown in the list.</p>
<p>Also, if you click only on "Internal Links" type checkbox, then on refresh, deselect the checkbox again, refresh, this does not work correctly.</p> TYPO3 Core - Bug #84009 (Closed): Inserting an invalid url with link wizard throws exceptionhttp://forge.typo3.org/issues/840092018-02-22T10:21:18ZSybille Peterssypets@gmx.de
I had this problem in the following versions:
<ul>
<li>current master (9.2.0-dev)</li>
<li>current TYPO3_8-7 branch (8.7.11-dev)</li>
<li>8.7.10<br />(that's all I tested so far)</li>
</ul>
<a name="Steps-to-reproduce"></a>
<h2 >Steps to reproduce<a href="#Steps-to-reproduce" class="wiki-anchor">¶</a></h2>
<ol>
<li>Insert an invalid url (I used <strong>http//abc.de/sfdsf</strong>) into a content element with the link wizard (external url)</li>
<li>Save the content element: exception is thrown</li>
</ol>
<p>(set configuration presets to "debug" to see exception message)</p>
<a name="Exception"></a>
<h2 >Exception<a href="#Exception" class="wiki-anchor">¶</a></h2>
<p>Exception for 8.7.10:</p>
<pre><code class="php syntaxhl" data-language="php"><span class="nc">Uncaught</span> <span class="no">TYPO3</span> <span class="nc">Exception</span>
<span class="c1">#1460629247: No valid handlers found for type: unknown (More information)</span>
<span class="nc">TYPO3\CMS\Core\LinkHandling\Exception\UnknownLinkHandlerException</span> <span class="n">thrown</span> <span class="n">in</span> <span class="n">file</span>
<span class="o">/</span><span class="k">var</span><span class="o">/</span><span class="n">www</span><span class="o">/</span><span class="n">t3bare8</span><span class="o">/</span><span class="n">htdocs</span><span class="o">/</span><span class="n">typo3_src</span><span class="o">-</span><span class="mf">8.7.10</span><span class="o">/</span><span class="n">typo3</span><span class="o">/</span><span class="n">sysext</span><span class="o">/</span><span class="n">core</span><span class="o">/</span><span class="nc">Classes</span><span class="o">/</span><span class="nc">LinkHandling</span><span class="o">/</span><span class="nc">LinkService</span><span class="mf">.</span><span class="n">php</span> <span class="n">in</span> <span class="n">line</span> <span class="mf">155.</span>
<span class="mi">18</span> <span class="nc">TYPO3\CMS\Core\LinkHandling\LinkService</span><span class="o">::</span><span class="nf">asString</span><span class="p">(</span><span class="k">array</span><span class="p">)</span>
<span class="o">/</span><span class="k">var</span><span class="o">/</span><span class="n">www</span><span class="o">/</span><span class="n">t3bare8</span><span class="o">/</span><span class="n">htdocs</span><span class="o">/</span><span class="n">typo3_src</span><span class="o">-</span><span class="mf">8.7.10</span><span class="o">/</span><span class="n">typo3</span><span class="o">/</span><span class="n">sysext</span><span class="o">/</span><span class="n">core</span><span class="o">/</span><span class="nc">Classes</span><span class="o">/</span><span class="nc">Html</span><span class="o">/</span><span class="nc">RteHtmlParser</span><span class="mf">.</span><span class="n">php</span><span class="o">:</span>
<span class="mo">00566</span><span class="o">:</span> <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
<span class="mo">00567</span><span class="o">:</span> <span class="c1">// Otherwise store the link as <a> tag as default by TYPO3, with the new link service syntax</span>
<span class="mo">0056</span><span class="mi">8</span><span class="o">:</span> <span class="nv">$tagAttributes</span><span class="p">[</span><span class="s1">'href'</span><span class="p">]</span> <span class="o">=</span> <span class="nv">$linkService</span><span class="o">-></span><span class="nf">asString</span><span class="p">(</span><span class="nv">$linkInformation</span><span class="p">);</span>
<span class="mo">0056</span><span class="mi">9</span><span class="o">:</span> <span class="nv">$blockSplit</span><span class="p">[</span><span class="nv">$k</span><span class="p">]</span> <span class="o">=</span> <span class="s1">'<a '</span> <span class="mf">.</span> <span class="nc">GeneralUtility</span><span class="o">::</span><span class="nf">implodeAttributes</span><span class="p">(</span><span class="nv">$tagAttributes</span><span class="p">,</span> <span class="kc">true</span><span class="p">)</span> <span class="mf">.</span> <span class="s1">'>'</span>
<span class="mo">00570</span><span class="o">:</span> <span class="mf">.</span> <span class="nv">$this</span><span class="o">-></span><span class="nf">TS_links_db</span><span class="p">(</span><span class="nv">$this</span><span class="o">-></span><span class="nf">removeFirstAndLastTag</span><span class="p">(</span><span class="nv">$blockSplit</span><span class="p">[</span><span class="nv">$k</span><span class="p">]))</span> <span class="mf">.</span> <span class="s1">'</a>'</span><span class="p">;</span>
<span class="mi">17</span> <span class="nc">TYPO3\CMS\Core\Html\RteHtmlParser</span><span class="o">::</span><span class="nf">TS_links_db</span><span class="p">(</span><span class="s2">"<p><a href="</span><span class="n">http</span><span class="c1">//abc.de/sfdsf">invalid link&nbsp;</a></p>")</span>
<span class="o">/</span><span class="k">var</span><span class="o">/</span><span class="n">www</span><span class="o">/</span><span class="n">t3bare8</span><span class="o">/</span><span class="n">htdocs</span><span class="o">/</span><span class="n">typo3_src</span><span class="o">-</span><span class="mf">8.7.10</span><span class="o">/</span><span class="n">typo3</span><span class="o">/</span><span class="n">sysext</span><span class="o">/</span><span class="n">core</span><span class="o">/</span><span class="nc">Classes</span><span class="o">/</span><span class="nc">Html</span><span class="o">/</span><span class="nc">RteHtmlParser</span><span class="mf">.</span><span class="n">php</span><span class="o">:</span>
<span class="mo">00230</span><span class="o">:</span> <span class="k">break</span><span class="p">;</span>
<span class="mo">00231</span><span class="o">:</span> <span class="k">case</span> <span class="s1">'ts_links'</span><span class="o">:</span>
<span class="mo">00232</span><span class="o">:</span> <span class="nv">$value</span> <span class="o">=</span> <span class="nv">$this</span><span class="o">-></span><span class="nf">TS_links_db</span><span class="p">(</span><span class="nv">$value</span><span class="p">);</span>
<span class="mo">00233</span><span class="o">:</span> <span class="k">break</span><span class="p">;</span>
<span class="mo">00234</span><span class="o">:</span> <span class="k">case</span> <span class="s1">'css_transform'</span><span class="o">:</span>
<span class="mi">16</span> <span class="nc">TYPO3\CMS\Core\Html\RteHtmlParser</span><span class="o">::</span><span class="nf">RTE_transform</span><span class="p">(</span><span class="s2">"<p><a href="</span><span class="n">http</span><span class="c1">//abc.de/sfdsf">invalid link&nbsp;</a></p>", array, "db", array)</span>
<span class="o">/</span><span class="k">var</span><span class="o">/</span><span class="n">www</span><span class="o">/</span><span class="n">t3bare8</span><span class="o">/</span><span class="n">htdocs</span><span class="o">/</span><span class="n">typo3_src</span><span class="o">-</span><span class="mf">8.7.10</span><span class="o">/</span><span class="n">typo3</span><span class="o">/</span><span class="n">sysext</span><span class="o">/</span><span class="n">core</span><span class="o">/</span><span class="nc">Classes</span><span class="o">/</span><span class="nc">DataHandling</span><span class="o">/</span><span class="nc">DataHandler</span><span class="mf">.</span><span class="n">php</span><span class="o">:</span>
<span class="mo">017</span><span class="mi">83</span><span class="o">:</span> <span class="nv">$parseHTML</span> <span class="o">=</span> <span class="nc">GeneralUtility</span><span class="o">::</span><span class="nf">makeInstance</span><span class="p">(</span><span class="nc">RteHtmlParser</span><span class="o">::</span><span class="n">class</span><span class="p">);</span>
<span class="mo">017</span><span class="mi">84</span><span class="o">:</span> <span class="nv">$parseHTML</span><span class="o">-></span><span class="nf">init</span><span class="p">(</span><span class="nv">$table</span> <span class="mf">.</span> <span class="s1">':'</span> <span class="mf">.</span> <span class="nv">$field</span><span class="p">,</span> <span class="nv">$realPid</span><span class="p">);</span>
<span class="mo">017</span><span class="mi">85</span><span class="o">:</span> <span class="nv">$valueArray</span><span class="p">[</span><span class="s1">'value'</span><span class="p">]</span> <span class="o">=</span> <span class="nv">$parseHTML</span><span class="o">-></span><span class="nf">RTE_transform</span><span class="p">(</span><span class="nv">$value</span><span class="p">,</span> <span class="p">[],</span> <span class="s1">'db'</span><span class="p">,</span> <span class="nv">$richtextConfiguration</span><span class="p">);</span>
<span class="mo">017</span><span class="mi">86</span><span class="o">:</span> <span class="p">}</span>
<span class="mo">017</span><span class="mi">87</span><span class="o">:</span>
<span class="mi">15</span> <span class="nc">TYPO3\CMS\Core\DataHandling\DataHandler</span><span class="o">::</span><span class="nf">checkValueForText</span><span class="p">(</span><span class="s2">"<p><a href="</span><span class="n">http</span><span class="c1">//abc.de/sfdsf">invalid link&nbsp;</a></p></span>
<span class="err">↵</span><span class="s2">", array, "</span><span class="n">tt_content</span><span class="s2">", "</span><span class="nc">NEW5a8e8db2b57d9344844565</span><span class="s2">", 2, "</span><span class="n">bodytext</span><span class="s2">")
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/core/Classes/DataHandling/DataHandler.php:
01656: switch (</span><span class="nv">$tcaFieldConf['type']</span><span class="s2">) {
01657: case 'text':
01658: </span><span class="nv">$res</span><span class="s2"> = </span><span class="nv">$this->checkValueForText</span><span class="s2">(</span><span class="nv">$value</span><span class="s2">, </span><span class="nv">$tcaFieldConf</span><span class="s2">, </span><span class="nv">$table</span><span class="s2">, </span><span class="nv">$id</span><span class="s2">, </span><span class="nv">$realPid</span><span class="s2">, </span><span class="nv">$field</span><span class="s2">);
01659: break;
01660: case 'passthrough':
14 TYPO3\CMS\Core\DataHandling\DataHandler::checkValue_SW(array, "</span><span class="o"><</span><span class="n">p</span><span class="o">><</span><span class="n">a</span> <span class="n">href</span><span class="o">=</span><span class="s2">"http//abc.de/sfdsf"</span><span class="o">></span><span class="n">invalid</span> <span class="n">link</span><span class="o">&</span><span class="n">nbsp</span><span class="p">;</span><span class="o"></</span><span class="n">a</span><span class="o">></</span><span class="n">p</span><span class="o">></span>
<span class="err">↵</span><span class="s2">", array, "</span><span class="n">tt_content</span><span class="s2">", "</span><span class="nc">NEW5a8e8db2b57d9344844565</span><span class="s2">", NULL, "</span><span class="k">new</span><span class="s2">", 2, NULL, "</span><span class="n">bodytext</span><span class="s2">", NULL, 2)
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/core/Classes/DataHandling/DataHandler.php:
01623:
01624: // Perform processing:
01625: </span><span class="nv">$res</span><span class="s2"> = </span><span class="nv">$this->checkValue_SW</span><span class="s2">(</span><span class="nv">$res</span><span class="s2">, </span><span class="nv">$value</span><span class="s2">, </span><span class="nv">$tcaFieldConf</span><span class="s2">, </span><span class="nv">$table</span><span class="s2">, </span><span class="nv">$id</span><span class="s2">, </span><span class="nv">$curValue</span><span class="s2">, </span><span class="nv">$status</span><span class="s2">, </span><span class="nv">$realPid</span><span class="s2">, </span><span class="nv">$recFID</span><span class="s2">, </span><span class="nv">$field</span><span class="s2">, </span><span class="nv">$this->uploadedFileArray</span><span class="s2">[</span><span class="nv">$table</span><span class="s2">][</span><span class="nv">$id</span><span class="s2">][</span><span class="nv">$field</span><span class="s2">], </span><span class="nv">$tscPID</span><span class="s2">);
01626: return </span><span class="nv">$res</span><span class="s2">;
01627: }
13 TYPO3\CMS\Core\DataHandling\DataHandler::checkValue("</span><span class="n">tt_content</span><span class="s2">", "</span><span class="n">bodytext</span><span class="s2">", "</span><span class="o"><</span><span class="n">p</span><span class="o">><</span><span class="n">a</span> <span class="n">href</span><span class="o">=</span><span class="s2">"http//abc.de/sfdsf"</span><span class="o">></span><span class="n">invalid</span> <span class="n">link</span><span class="o">&</span><span class="n">nbsp</span><span class="p">;</span><span class="o"></</span><span class="n">a</span><span class="o">></</span><span class="n">p</span><span class="o">></span>
<span class="err">↵</span><span class="s2">", "</span><span class="nc">NEW5a8e8db2b57d9344844565</span><span class="s2">", "</span><span class="k">new</span><span class="s2">", 2, 2)
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/core/Classes/DataHandling/DataHandler.php:
01513: if (isset(</span><span class="nv">$GLOBALS['TCA'][$table]['columns'][$field]</span><span class="s2">)) {
01514: // Evaluating the value
01515: </span><span class="nv">$res</span><span class="s2"> = </span><span class="nv">$this->checkValue</span><span class="s2">(</span><span class="nv">$table</span><span class="s2">, </span><span class="nv">$field</span><span class="s2">, </span><span class="nv">$fieldValue</span><span class="s2">, </span><span class="nv">$id</span><span class="s2">, </span><span class="nv">$status</span><span class="s2">, </span><span class="nv">$realPid</span><span class="s2">, </span><span class="nv">$tscPID</span><span class="s2">);
01516: if (array_key_exists('value', </span><span class="nv">$res</span><span class="s2">)) {
01517: </span><span class="nv">$fieldArray[$field]</span><span class="s2"> = </span><span class="nv">$res['value']</span><span class="s2">;
12 TYPO3\CMS\Core\DataHandling\DataHandler::fillInFieldArray("</span><span class="n">tt_content</span><span class="s2">", "</span><span class="nc">NEW5a8e8db2b57d9344844565</span><span class="s2">", array, array, 2, "</span><span class="k">new</span><span class="s2">", 2)
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/core/Classes/DataHandling/DataHandler.php:
01228: }
01229: // Processing of all fields in incomingFieldArray and setting them in </span><span class="nv">$fieldArray</span><span class="s2">
01230: </span><span class="nv">$fieldArray</span><span class="s2"> = </span><span class="nv">$this->fillInFieldArray</span><span class="s2">(</span><span class="nv">$table</span><span class="s2">, </span><span class="nv">$id</span><span class="s2">, </span><span class="nv">$fieldArray</span><span class="s2">, </span><span class="nv">$incomingFieldArray</span><span class="s2">, </span><span class="nv">$theRealPid</span><span class="s2">, </span><span class="nv">$status</span><span class="s2">, </span><span class="nv">$tscPID</span><span class="s2">);
01231: </span><span class="nv">$newVersion_placeholderFieldArray</span><span class="s2"> = [];
01232: if (</span><span class="nv">$createNewVersion</span><span class="s2">) {
11 TYPO3\CMS\Core\DataHandling\DataHandler::process_datamap()
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/backend/Classes/Controller/EditDocumentController.php:
00575: // Perform the saving operation with DataHandler:
00576: </span><span class="nv">$tce->process_uploads</span><span class="s2">(</span><span class="nv">$_FILES</span><span class="s2">);
00577: </span><span class="nv">$tce->process_datamap</span><span class="s2">();
00578: </span><span class="nv">$tce->process_cmdmap</span><span class="s2">();
00579: // If pages are being edited, we set an instruction about updating the page tree after this operation.
10 TYPO3\CMS\Backend\Controller\EditDocumentController::processData()
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/backend/Classes/Controller/EditDocumentController.php:
01988: // Checks, if a save button has been clicked (or the doSave variable is sent)
01989: if (</span><span class="nv">$this->doProcessData</span><span class="s2">()) {
01990: </span><span class="nv">$this->processData</span><span class="s2">();
01991: }
01992:
9 TYPO3\CMS\Backend\Controller\EditDocumentController::mainAction(TYPO3\CMS\Core\Http\ServerRequest, TYPO3\CMS\Core\Http\Response)
8 call_user_func_array(array, array)
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/backend/Classes/Http/RouteDispatcher.php:
00052: </span><span class="nv">$targetIdentifier</span><span class="s2"> = </span><span class="nv">$route->getOption</span><span class="s2">('target');
00053: </span><span class="nv">$target</span><span class="s2"> = </span><span class="nv">$this->getCallableFromTarget</span><span class="s2">(</span><span class="nv">$targetIdentifier</span><span class="s2">);
00054: return call_user_func_array(</span><span class="nv">$target</span><span class="s2">, [</span><span class="nv">$request</span><span class="s2">, </span><span class="nv">$response</span><span class="s2">]);
00055: }
00056:
7 TYPO3\CMS\Backend\Http\RouteDispatcher::dispatch(TYPO3\CMS\Core\Http\ServerRequest, TYPO3\CMS\Core\Http\Response)
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/backend/Classes/Http/RequestHandler.php:
00137: /** @var RouteDispatcher </span><span class="nv">$dispatcher</span><span class="s2"> */
00138: </span><span class="nv">$dispatcher</span><span class="s2"> = GeneralUtility::makeInstance(RouteDispatcher::class);
00139: return </span><span class="nv">$dispatcher->dispatch</span><span class="s2">(</span><span class="nv">$request</span><span class="s2">, </span><span class="nv">$response</span><span class="s2">);
00140: }
00141: }
6 TYPO3\CMS\Backend\Http\RequestHandler::dispatch(TYPO3\CMS\Core\Http\ServerRequest)
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/backend/Classes/Http/RequestHandler.php:
00070: // Check if the router has the available route and dispatch.
00071: try {
00072: return </span><span class="nv">$this->dispatch</span><span class="s2">(</span><span class="nv">$request</span><span class="s2">);
00073: } catch (InvalidRequestTokenException </span><span class="nv">$e</span><span class="s2">) {
00074: // When token was invalid redirect to login
5 TYPO3\CMS\Backend\Http\RequestHandler::handleRequest(TYPO3\CMS\Core\Http\ServerRequest)
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/core/Classes/Core/Bootstrap.php:
00313:
00314: // Execute the command which returns a Response object or NULL
00315: </span><span class="nv">$this->response</span><span class="s2"> = </span><span class="nv">$requestHandler->handleRequest</span><span class="s2">(</span><span class="nv">$request</span><span class="s2">);
00316: return </span><span class="nv">$this</span><span class="s2">;
00317: }
4 TYPO3\CMS\Core\Core\Bootstrap::handleRequest(TYPO3\CMS\Core\Http\ServerRequest)
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/backend/Classes/Http/Application.php:
00090: }
00091:
00092: </span><span class="nv">$this->bootstrap</span><span class="s2">->handleRequest(</span><span class="nv">$this->request</span><span class="s2">);
00093:
00094: if (</span><span class="nv">$execute</span><span class="s2"> !== null) {
3 TYPO3\CMS\Backend\Http\Application::run()
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/backend/Resources/Private/Php/backend.php:
00022: </span><span class="nv">$classLoader</span><span class="s2"> = require __DIR__ . '/../../../../../../vendor/autoload.php';
00023:
00024: (new \TYPO3\CMS\Backend\Http\Application(</span><span class="nv">$classLoader</span><span class="s2">))->run();
00025: });
2 </span><span class="si">{</span><span class="nv">closure</span><span class="si">}</span><span class="s2">()
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/sysext/backend/Resources/Private/Php/backend.php:
00023:
00024: (new \TYPO3\CMS\Backend\Http\Application(</span><span class="nv">$classLoader</span><span class="s2">))->run();
00025: });
1 require("</span><span class="o">/</span><span class="k">var</span><span class="o">/</span><span class="n">www</span><span class="o">/</span><span class="n">t3bare8</span><span class="o">/</span><span class="n">htdocs</span><span class="o">/</span><span class="n">typo3_src</span><span class="o">-</span><span class="mf">8.7.10</span><span class="o">/</span><span class="n">typo3</span><span class="o">/</span><span class="n">sysext</span><span class="o">/</span><span class="n">backend</span><span class="o">/</span><span class="nc">Resources</span><span class="o">/</span><span class="k">Private</span><span class="o">/</span><span class="nc">Php</span><span class="o">/</span><span class="n">backend</span><span class="mf">.</span><span class="n">php</span><span class="s2">")
/var/www/t3bare8/htdocs/typo3_src-8.7.10/typo3/index.php:
00001: <?php
00002:
00003: require __DIR__ . '/sysext/backend/Resources/Private/Php/backend.php';
</span></code></pre> TYPO3 Core - Bug #84008 (Closed): Drag 'n drop of page in page tree does not workhttp://forge.typo3.org/issues/840082018-02-22T09:48:55ZSybille Peterssypets@gmx.de
<p>I had this problem in the current master (9.2.0-dev).</p>
<p>If it isn't easily reproducable, let me know and I'll look into it further.</p>
<a name="Steps-to-reproduce"></a>
<h2 >Steps to reproduce<a href="#Steps-to-reproduce" class="wiki-anchor">¶</a></h2>
<ol>
<li>Create a new page with right mouse click, New</li>
<li>Move the page by dragging till the place to insert changes to a line</li>
<li>Dialog pops up, click on move</li>
</ol>
<a name="Expected-result"></a>
<h2 >Expected result<a href="#Expected-result" class="wiki-anchor">¶</a></h2>
<p>Page is moved</p>
<a name="Actual-results"></a>
<h2 >Actual results<a href="#Actual-results" class="wiki-anchor">¶</a></h2>
<p>Page stays where it is</p> TYPO3 Core - Bug #83970 (New): Localize / Synchronize buttons are missing for Text & media assetshttp://forge.typo3.org/issues/839702018-02-20T00:23:03ZSybille Peterssypets@gmx.de
<p>Tested with current master (9.2.0-dev).</p>
<p>If some "assets" are inserted into "Text & media" and translated (translate, not copy) and the elements in the original language are changed (order changed, new ones inserted etc.), I would expect the buttons "Localize all records" / "Synchronize with original language" to be displayed for the translation.</p>
<p>This does work with bootstrap carousel from bootstrap_package, but not with Text & Media.</p>
<p><img src="http://forge.typo3.org/attachments/download/33208/bootstrap.png" alt="" loading="lazy" /></p>
<p>May be missing TCA options 'showSynchronizationLink' and 'showAllLocalizationLink'?</p> TYPO3 Core - Bug #83835 (Under Review): Linkvalidator should check more fields by default, such a...http://forge.typo3.org/issues/838352018-02-09T21:17:52ZSybille Peterssypets@gmx.de
<p>Tested (25.03.2024): should just work if added to the searchFields (with TYPO3 v12 and v13):</p>
<pre>
mod.linkvalidator.serachFields.sys_file_reference = link
</pre>
<p>Since TYPO3 v12, linkvalidator also checks fields if type = "link".</p>
<hr />
<a name="Reproduce"></a>
<h1 >Reproduce<a href="#Reproduce" class="wiki-anchor">¶</a></h1>
<p>1. Change default page TSconfig for linkvalidator to include sys_file_reference:</p>
<pre>
mod.linkvalidator {
searchFields {
pages = media,url
tt_content = bodytext,header_link,records
sys_file_reference = link
}
...
}
</pre>
<p>2. Create a "text & images" or "text & media", add an image, add a dead (not existing link) in the "Link" field for the image metadata.</p>
<p><img src="http://forge.typo3.org/attachments/download/33181/linkval4.png" alt="" loading="lazy" /></p>
<p>3. Restart "Check link", the dead link should now appear in the Reports</p>
<a name="Results"></a>
<h1 >Results<a href="#Results" class="wiki-anchor">¶</a></h1>
<p>Clicking the pen will jump to the edit wizard for sys_file_reference, but you can't change the link there, you need the edit wizard for tt_content.</p>
<p><img src="http://forge.typo3.org/attachments/download/33179/linkval1.png" alt="" loading="lazy" /><br /><img src="http://forge.typo3.org/attachments/download/33178/linkval2.png" alt="" loading="lazy" /></p>
<p>So, Linkvalidator does not properly handle sys_file_reference records (and probably wasn't intended to because it was developed before FAL).</p> TYPO3 Core - Bug #83125 (Closed): Selecting a bookmark in the backend should mark the page as sel...http://forge.typo3.org/issues/831252017-11-27T22:11:17ZSybille Peterssypets@gmx.de
<a name="System"></a>
<h2 >System<a href="#System" class="wiki-anchor">¶</a></h2>
<ul>
<li>TYPO3 8.7.8</li>
<li>Basic TYPO3 Installation (introduction package)</li>
</ul>
<a name="Reproduce"></a>
<h2 >Reproduce<a href="#Reproduce" class="wiki-anchor">¶</a></h2>
<ol>
<li>Create a bookmark of a page</li>
<li>Select the bookmark</li>
</ol>
<p>This will load the bookmarked page correctly but the page tree will just get reloaded but stay the same.</p>
<a name="Expected-result"></a>
<h2 >Expected result<a href="#Expected-result" class="wiki-anchor">¶</a></h2>
<p>I would expect some visual feedback for the bookmarked page in the page tree, ideally expanding the page tree and displaying it as selected (similar to selecting it manually).</p> TYPO3 Core - Bug #82092 (Closed): Document that TYPO3 CMS 7.6 is not compatible with MySQL strict...http://forge.typo3.org/issues/820922017-08-12T12:56:39ZSybille Peterssypets@gmx.de
<p>It is still necessary to use MySQL strict mode for TYPO3 7.6.21</p>
<p>I just tested this and ran into the already known "SQL error" when trying to create a page in a bare TYPO3 system. ("SQL error: 'Incorrect integer value: '' for column 'storage_pid' at row 1'")</p>
<p>For TYPO3 8, MySQL strict mode is apparently supported: <a class="external" href="https://forge.typo3.org/issues/72610">https://forge.typo3.org/issues/72610</a></p>
<p>The "system requirements" page does not mention strict mode (which is probably ok since the currently supported version is TYPO3 8) but the other obvious sources for TYPO3 7.6 did not either, e.g. see here:</p>
<ul>
<li>System requirements on docs.typo3.org (select v7.6 on the left sidebar in the bottom): <a class="external" href="https://docs.typo3.org/typo3cms/InstallationGuide/In-depth/SystemRequirements/Index.html">https://docs.typo3.org/typo3cms/InstallationGuide/In-depth/SystemRequirements/Index.html</a></li>
<li>Installation Guide:Troubleshooting:MySQL (select v7.6 on the left sidebar in the bottom) : <a class="external" href="https://docs.typo3.org/typo3cms/InstallationGuide/latest/Troubleshooting/Mysql/Index.html">https://docs.typo3.org/typo3cms/InstallationGuide/latest/Troubleshooting/Mysql/Index.html</a></li>
<li>Install.md for 7.6 on github : <a class="external" href="https://github.com/TYPO3/TYPO3.CMS/blob/TYPO3_7-6/INSTALL.md">https://github.com/TYPO3/TYPO3.CMS/blob/TYPO3_7-6/INSTALL.md</a></li>
</ul>
<p>The Install.md for TYPO3 6.2 mentions strict mode: <a class="external" href="https://github.com/TYPO3/TYPO3.CMS/blob/TYPO3_6-2/INSTALL.md">https://github.com/TYPO3/TYPO3.CMS/blob/TYPO3_6-2/INSTALL.md</a></p>
<p>It would be even better to also check for strict mode on the environment check on FIRST_INSTALL but I will see if there is already an issue for this and if not I will create one ...</p>
<p>Since strict mode is officially supported in TYPO3 8 and TYPO3 8 is the current LTS version, the problem is not so severe but there still may be people using TYPO3 7.6.</p> TYPO3 Core - Bug #69665 (Closed): Rendering of TypoScript shortcutIcon does not consider HTTPS (i...http://forge.typo3.org/issues/696652015-09-11T12:40:28ZSybille Peterssypets@gmx.de
<p>IMHO it should be possible to enter the URL for shortcutIcon as arbitrary URL, specifically in any the following formats:</p>
<ul>
<li>absolute path, starting with /</li>
<li>absolute URL e.g. <a class="external" href="https://www.example.org">https://www.example.org</a></li>
<li>scheme relative : //www.example.org</li>
</ul>
<p>The current rendering is not flexible enough for HTTP/ HTTPS because the rendered and cached page will be dependant on the URL scheme first used. This may result in a URL with HTTP scheme used for favicon (if the page is first fetched via http), which will then be cached and used for HTTPS as well resulting in security warnings (mixed content).</p>
<a name="TYPO3-source-code-45-and-62-more-or-less-the-same"></a>
<h1 >TYPO3 source code (4.5 and 6.2 more or less the same):<a href="#TYPO3-source-code-45-and-62-more-or-less-the-same" class="wiki-anchor">¶</a></h1>
<pre><code class="php syntaxhl" data-language="php"><span class="k">if</span> <span class="p">(</span><span class="nv">$GLOBALS</span><span class="p">[</span><span class="s1">'TSFE'</span><span class="p">]</span><span class="o">-></span><span class="n">pSetup</span><span class="p">[</span><span class="s1">'shortcutIcon'</span><span class="p">])</span> <span class="p">{</span>
<span class="nv">$favIcon</span> <span class="o">=</span> <span class="nv">$GLOBALS</span><span class="p">[</span><span class="s1">'TSFE'</span><span class="p">]</span><span class="o">-></span><span class="n">tmpl</span><span class="o">-></span><span class="nf">getFileName</span><span class="p">(</span><span class="nv">$GLOBALS</span><span class="p">[</span><span class="s1">'TSFE'</span><span class="p">]</span><span class="o">-></span><span class="n">pSetup</span><span class="p">[</span><span class="s1">'shortcutIcon'</span><span class="p">]);</span>
<span class="k">if</span> <span class="p">(</span><span class="nb">is_file</span><span class="p">(</span><span class="n">PATH_site</span> <span class="mf">.</span> <span class="nv">$favIcon</span><span class="p">))</span> <span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="nb">function_exists</span><span class="p">(</span><span class="s1">'finfo_open'</span><span class="p">))</span> <span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="nv">$finfo</span> <span class="o">=</span> <span class="o">@</span><span class="nb">finfo_open</span><span class="p">(</span><span class="no">FILEINFO_MIME</span><span class="p">))</span> <span class="p">{</span>
<span class="nv">$iconMimeType</span> <span class="o">=</span> <span class="s1">' type="'</span> <span class="mf">.</span> <span class="nb">finfo_file</span><span class="p">(</span><span class="nv">$finfo</span><span class="p">,</span> <span class="p">(</span><span class="n">PATH_site</span> <span class="mf">.</span> <span class="nv">$favIcon</span><span class="p">))</span> <span class="mf">.</span> <span class="s1">'"'</span><span class="p">;</span>
<span class="nb">finfo_close</span><span class="p">(</span><span class="nv">$finfo</span><span class="p">);</span>
<span class="nv">$pageRenderer</span><span class="o">-></span><span class="nf">setIconMimeType</span><span class="p">(</span><span class="nv">$iconMimeType</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="nv">$pageRenderer</span><span class="o">-></span><span class="nf">setFavIcon</span><span class="p">(</span><span class="nc">GeneralUtility</span><span class="o">::</span><span class="nf">getIndpEnv</span><span class="p">(</span><span class="s1">'TYPO3_SITE_URL'</span><span class="p">)</span> <span class="mf">.</span> <span class="nv">$favIcon</span><span class="p">);</span>
<span class="p">}</span>
</code></pre>
<p>As you can see, it is not possible to use relative or absolute paths because TYPO3_SITE_URL is prepended in any case. It is not possible to use absolute URLs because this will result in is_file failing.</p>
<p>This issue has actually already been reported, but for typo3.org, see <a class="external" href="https://forge.typo3.org/issues/58265">https://forge.typo3.org/issues/58265</a></p>
<p>Any help is appreciated.</p> TYPO3 Core - Bug #68635 (Closed): change type of content element: linkvalidator will show irrele...http://forge.typo3.org/issues/686352015-07-29T21:28:56ZSybille Peterssypets@gmx.de
<p>On changing the type of a content element, text is still kept in the database tt_content record (e.g. bodytext) even though it is not used. The linkvalidator should only check database columns, if they are actually used (usually depends on ctype in tt_content).</p>
<p>Example: change a text content element to shortcut.</p>
<p>Reproduce:</p>
<p>1) create a text element and insert a dead link : Linkvalidator will correctly report this<br />2) change content type of content element, e.g. to "insert records" (tt_content.ctype='shortcut') and save (tt_content.bodytext still contains the text with the dead link)<br />3) Linkvalidator will still incorrectly report the dead link, even thought it is not displaed.</p>
<p>Tested in TYPO3 6.2.14, TYPO3 4.5.40</p> TYPO3 Core - Bug #66793 (Closed): "simulate time" in admin-panel does not respect timezonehttp://forge.typo3.org/issues/667932015-05-05T09:54:27ZSybille Peterssypets@gmx.de
<p>The entered time in the text field "simulate time" is evaluated as UTC / GMT even though a different timezone is set on client + server machine (CEST / "Europe/Berlin").</p>
<p>This problem exists in 4.5.40 and 6.2.12.</p>
<a name="More-info"></a>
<h1 >More info:<a href="#More-info" class="wiki-anchor">¶</a></h1>
<p>php.ini:<br /><pre><code class="php syntaxhl" data-language="php"><span class="n">date</span><span class="mf">.</span><span class="n">timezone</span> <span class="o">=</span> <span class="s2">"Europe/Berlin"</span>
</code></pre></p>
<p>System timezone: CEST</p>
<p>LocalConfiguration.php:</p>
<pre><code class="php syntaxhl" data-language="php"><span class="s1">'phpTimeZone'</span> <span class="o">=></span> <span class="s1">'Europe/Berlin'</span><span class="p">,</span>
<span class="s1">'serverTimeZone'</span> <span class="o">=></span> <span class="s1">'2'</span><span class="p">,</span>
</code></pre>
<a name="reproduce"></a>
<h1 >reproduce<a href="#reproduce" class="wiki-anchor">¶</a></h1>
<ol>
<li>Set allowed time from 9:00 to 10:00 for a page (e.g. 9:00 5-5-2015)</li>
<li>Enter 7:18 in "simulate time" in admin panel</li>
</ol>
<a name="Result"></a>
<h1 >Result<a href="#Result" class="wiki-anchor">¶</a></h1>
<p>Allowed content (9:00 to 10:00) is displayed for entered time of 7:18 > not correct</p>
<a name="conclusion"></a>
<h1 >conclusion:<a href="#conclusion" class="wiki-anchor">¶</a></h1>
<p>"simulate time" in admin-panel is evaluated as UTC (it does not use current timezone)</p>
<a name="Test"></a>
<h1 >Test<a href="#Test" class="wiki-anchor">¶</a></h1>
<p>entered time for content: 6:00 - 9:00</p>
<p>entered time in "simulate time" in admin panel:</p>
<p>3:00 : content not visible<br />4:00 : content visisble<br />5:00 : content visible<br />6:00 : content visible<br />6:59 : content visisble<br />7:00 : content not visisble</p>
<p>+2 hours offset</p> TYPO3 Core - Bug #65776 (Closed): check in Upgrade Wizard fails due to truncated file pathhttp://forge.typo3.org/issues/657762015-03-16T16:35:57ZSybille Peterssypets@gmx.de
<a name="Reproduce"></a>
<h1 >Reproduce<a href="#Reproduce" class="wiki-anchor">¶</a></h1>
<ol>
<li>Update from the latest 4.5 to 6.2.10 and run the Upgrade Wizard.</li>
</ol>
<a name="Result"></a>
<h1 >Result<a href="#Result" class="wiki-anchor">¶</a></h1>
<p>Upgrade Wizard shows a number of links to missing files. Some of these are not actually missing. The problem seems to be that the Upgrade Wizard truncates the path of long filenames (length > 200), the File Abstraction Layer however has no problem with path / filename of this size, so the link actually works. The error message of the Upgrade Wizard is wrong.</p>
<a name="More-information"></a>
<h1 >More information:<a href="#More-information" class="wiki-anchor">¶</a></h1>
<p>Error message</p>
<pre><code class="text syntaxhl" data-language="text">File not found (page / uid / path / table / field):,3249,30782,fileadmin/sonderpaedagogik/DownloadsDozeten/Luedtke/Luedtke_Kallmeyer_2007_._Sprachenvielfalt_in_deutschen_Kindergaerten_-_Chance_oder_Hindernis._hoergeschaedigte_kinder_-_erwachsene_hoergeschaedigte.,tt_content,bodytext
</code></pre>
<p>Name of path:</p>
<pre><code class="text syntaxhl" data-language="text">fileadmin/sonderpaedagogik/DownloadsDozeten/Luedtke/Luedtke_Kallmeyer_2007_._Sprachenvielfalt_in_deutschen_Kindergaerten_-_Chance_oder_Hindernis._hoergeschaedigte_kinder_-_erwachsene_hoergeschaedigte.pdf
</code></pre>
<p>Entry in sys_file is correct:<br /><pre><code class="text syntaxhl" data-language="text">uid=8814, identifier="/sonderpaedagogik/DownloadsDozeten/Luedtke/Luedtke_Kallmeyer_2007_._Sprachenvielfalt_in_deutschen_Kindergaerten_-_Chance_oder_Hindernis._hoergeschaedigte_kinder_-_erwachsene_hoergeschaedigte.pdf"
</code></pre></p> TYPO3 Core - Bug #51360 (Closed): Linkvalidator: specifying TSconfig in scheduler has no effecthttp://forge.typo3.org/issues/513602013-08-26T17:22:37ZSybille Peterssypets@gmx.de
<p>It is possible to set for example subject and content type via page TSconfig. This works fine. However, setting TSconfig in linkvalidator task in scheduler has no effect.</p>
<p>Using version TYPO3 4.5.29</p> TYPO3 Core - Bug #49440 (Closed): Backend usergroup editing: Missing Texts in Access Lists: Allow...http://forge.typo3.org/issues/494402013-06-26T11:13:31ZSybille Peterssypets@gmx.de
<p>Since a change in the grouping of excludefields (TYPO3 4.5.23) some of the description texts are missing and only the keywords in parenthesis are displayed.</p>
<p>Descriptions are missing in German and English.</p>
<p>Most of the missing descriptions seem to be related to <strong>dropdown_sitemap</strong>, <strong>powermail</strong> and <strong>felogin</strong>:</p>
Page
<ul>
<li>(appear)</li>
<li>(description_field)</li>
<li>(exclude_doktypes)</li>
<li>(exclude_pages)</li>
<li>(expall)</li>
<li>(fade)</li>
<li>(link_text)</li>
<li>(include_not_in_menu)</li>
<li>(expand_levels)</li>
<li>(show_levels)</li>
<li>(list_tag)</li>
<li>(show_spacers) </li>
<li>(link_target)</li>
<li>(engine)</li>
<li>(singleview)</li>
<li>(singlepid)</li>
<li>....</li>
</ul>
Website User
<ul>
<li>(felogin_forgotHash)</li>
</ul>
Rules
<ul>
<li>(mandatory)</li>
<li>(maxlength)</li>
<li>(placeholder)</li>
</ul> TYPO3 Core - Bug #37467 (Closed): Change in class.t3lib_div.php may break things for HTTPS via re...http://forge.typo3.org/issues/374672012-05-24T14:51:11ZSybille Peterssypets@gmx.de
<p>The change introduced in TYPO3 4.5.16 as fix for bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Wrong HTTP protocol in combination with a proxy (Closed)" href="http://forge.typo3.org/issues/36004">#36004</a> makes working in backend impossible for some HTTPS reverse-proxy configurations.</p>
<p>It may be a misconfiguration on our end, but as far as I can see, since the change HTTPS will only work with reverse proxy, if <strong>X-Forwarded-For</strong> contains local and proxy IP and</p>
<pre><code class="php syntaxhl" data-language="php"> <span class="err">$</span><span class="p">[</span><span class="s1">'TYPO3_CONF_VARS'</span><span class="p">][</span><span class="s1">'SYS'</span><span class="p">][</span><span class="s1">'reverseProxyHeaderMultiValue'</span> <span class="o">=</span> <span class="s2">"last"</span><span class="p">;</span>
</code></pre>
<p>Login to backend works, but then a network connections error is displayed (<em>"Verbindungsproblem Bei dem Versuch eine Verbindung zum Server herzustellen ist ein Fehler aufgetreten. Bitte überprüfen Sie Ihre Netzwerkverbindung."</em>)</p>
<p>Analyzing this shows that the changed line 4151 in class.t3lib_div.php has caused this problem:</p>
<p>older version:</p>
<pre><code class="php syntaxhl" data-language="php"><span class="k">if</span> <span class="p">(</span><span class="k">self</span><span class="o">::</span><span class="nf">cmpIP</span><span class="p">(</span><span class="nv">$_SERVER</span><span class="p">[</span><span class="s1">'REMOTE_ADDR'</span><span class="p">],</span> <span class="nv">$proxySSL</span><span class="p">))</span> <span class="p">{</span>
</code></pre>
<p>newer version:<br /><pre><code class="php syntaxhl" data-language="php"><span class="k">if</span> <span class="p">(</span><span class="k">self</span><span class="o">::</span><span class="nf">cmpIP</span><span class="p">(</span><span class="k">self</span><span class="o">::</span><span class="nf">getIndpEnv</span><span class="p">(</span><span class="s1">'REMOTE_ADDR'</span><span class="p">),</span> <span class="nv">$proxySSL</span><span class="p">))</span> <span class="p">{</span>
</code></pre></p>