koninklijke-collective / my_redirects Goto Github PK
View Code? Open in Web Editor NEWTYPO3 Extension: Redirects management
Home Page: https://typo3.org/extensions/repository/view/my_redirects
License: GNU General Public License v2.0
TYPO3 Extension: Redirects management
Home Page: https://typo3.org/extensions/repository/view/my_redirects
License: GNU General Public License v2.0
If I want to create a bunch of redirects, I cannot do this simply via the DB, because the url_hash is generated with non-existing SQL functions (for example urlencoding of query parts).
Either there should be a "add missing url_hash'es" task (so I can add directly to the DB and recalculate the missing hashes via scheduler), or a import-possibility for CSV files or related.
What do you think about this?
From v. 4.0.0 editors cannot create any redirects.
Always this message: No record creation permission for user 3 on page root node 1437745221
(Editor cannot select a subpage)
As an editor I would like to have an wildcard character (
*
) or regular expression for the source link, so I can handle large numbers of redirects more effectively.
Thanks for the extension but...
In a TYPO3 7.6 System the Extension throws an error in the backend module due to textField ViewHelper. After fixing that, when creating a new redirect the TCA fieldtype "select" is unknown. I'll try to provide some fixes by time.
Hi, I've tried to use your extension for redirects management in TYPO3 8, but it doesn't work.
The reason is, taht it tries to redirect to link, with TYPO3 specific format like t3://page?uid=3
.
The method RedirectService->generateLink($target)
simply checks for GeneralUtility::isValidUrl($target)
, which in turn is true and that's why link is passed as is.
TYPO3 8.7.1
If an redirect URL is called with parameters, for example by Google Adwords, it throws a 404.
Example URL:
http://www.mydomain.com/myredirect/?gclid=2385j3jbns82
Target should be:
http://www.mydomain.com/mypath/to/target/?gclid=2385j3jbns82
but it throws a 404... without the parameter it works fine.
If a link to a file is made, the link does not work.
And also links to other records e.g. news using the linkhandler extension (https://github.com/cobwebch/linkhandler) do not work.
parse_url() wil return FALSE when it chokes on a URL. HttpUtility::buildUrl() will choke on the boolean.
Hey,
first thanks a lot for your work. It would be amazing that if the editor changes the path segement or title of a page so that the URL is not the same as before, a redirect automatically will be created. Often our costumers are confused about, why the page is not reachable by the old URL.
Maybe a hook after changing the page settings would be a solution. What do you think about that feature?
Kind Regards
Re-Saving a redirect record with different Domain does not update tx_myredirects_domain_model_redirect:pid
.
Redirects on pid=0 must only be accessed by admins. Editors should see a notice if no page is selected.
This would lead to the feature that editors can handle their own redirects
When using MySQL Version 5.7 (which is default version in Ubuntu 16.04 LTS), there are MySQL errors when saving a new redirect record.
We get the error, that there is no default value for "last_referrer" column. When we remove the "NOT NULL" for this column, we get the next error, that the value for column domain is invalid. We used "all domains" witch value 0.
Tested on TYPO3 7.6.16, Ubuntu 16.04 and MySQL 5.7
First of all, thanks a lot for developing this useful extension.
If you run a multi client TYPO3 system with multiple domains the filtering will not work when choosing "All domains" in redirects overview screen. You have to choose the right domain to get the redirects you looking for.
Thank you.
René
In 4.0.0 clicking on the column headers to sort the list does not work. The list reloads, but nothing happened.
The Extension doese not work with multiple languages.
The generateLink function only use the default Language 0.
Dear Sirs, Can you make the extension compatibility with TYPO3 8.1.2?
Currently you can not use the backend module.
f:be.buttons.icon ViewHelper no longer exists.
Right after clicking the install button in backend, i get this error:
#1: PHP Warning: file_get_contents(/kunden/homepages/28/d574274134/htdocs/update7/typo3/sysext/core/Resources/Private/Sql/Cache/Backend/Typo3DatabaseBackendCache.sql): failed to open stream: No such file or directory in /homepages/28/d574274134/htdocs/update7/typo3_src-7.6.14/typo3/sysext/core/Classes/Cache/Backend/Typo3DatabaseBackend.php line 441
TYPO3 is 7.6.14
I use a TYPO3 7.6.23 installation with extension "linkhandler". This extension generates links like this "record:tx_news_events:tx_news_domain_model_news:1". In KoninklijkeCollective\MyRedirects\Service\RedirectService -> generateLink at Line 278 the if-clause excludes links starting with "record:".
I changed the if-clause from:
if (stripos($link, 't3://') === 0 || GeneralUtility::isValidUrl($link) === false)
to
if (stripos($link, 't3://') === 0 || stripos($link, 'record:') === 0 || GeneralUtility::isValidUrl($link) === false)
and then redirects work fine as well for such links of extension "linkhandler". Could you include this solution into your nice extension?
Hi,
if one sets a redirect containing parameter values in uppercase, e.g. a Google Campaign like:
?utm_medium=Èmail&utm_campaign=TEST-Campaign
the values (and parameter names) get converted into lowercase which leads in the case of Google to two different campaign sources.
I'm sure there are other cases where capital letters in parameters or values must be respected as well.
I didn't find an option to control this behavior and in the code it looks like toLower
is one of the first actions applied to the redirect path.
What was your intention to do a conversion to lower case anytime and is there a workaround to keep capital letters.
Kind regards and thank you for this great extension
Andreas
Using latest version of my_redirect and TYPO3 8.7.3 (PHP 7.0.21 / MySQL 5.7.19) when using the backend module to create new redirect records and select box domain is set to option "All domains" I get an SQL error:
2: SQL error: 'Incorrect integer value: '' for column 'domain' at row 1' (tx_myredirects_domain_model_redirect:NEW59823a8c1ea4e900786396)
Although the backend module value for this option is set to "0".
It is working on a 7.6.x where I end up having the value 0 in the field domain.
The RealUrl upgrade wizard does not work and fails with an SQL exception.
No value is set, because of setting the values the wrong way. So only one empty record gets imported and creates an exception for the second record, because it has the same values (none).
Furthermore, the rootpage is not chosen (maybe it might work on a singlesite installation, but didn't check), because accessing the rootpage 0 won't work.
I will submit a PR to fix these issues just a bit later.
Since
there is a FlashMessage in the Backend: "The TypoScript setup is missing in your module."
Hey guys,
on one of my websites I got URL call like this:
https://tld.com/http://?id=306
I know... the URL is invalid and I am looking for the source of the issue. But the general problem is, that there is no 404 handling because the KoninklijkeCollective\MyRedirects\Service\RedirectService::generateUrlHash
method throw the "#1467622163: Incorrect url given." exception.
The unwanted behavior: "No 404 handling" if my_redirect do not get a valid URL.
But I think if the URL is not valid, my_redirect should no break the rendering so TYPO3 can handle 404 or something like that...
Regards,
Tim
The link dialog of the destination
field of redirects does not show custom record link tabs thus there is GUI way to use record links.
I really like your extension, would be cool to have the possibility to work with templateRootPaths, etc...
Are you going to develop your extension further ?
Hi
is it possible to add domains redirect?
thank you
D.
Backend module brings an Exception in latest master in case that I haven't set any $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['my_redirects']
configuration:
#1476107295: PHP Warning: unserialize() expects parameter 2 to be array, boolean given in /app/html/typo3conf/ext/my_redirects/Classes/Utility/ConfigurationUtility.php line 86 (More information)
Sometimes it's helpful just to deactivate or start later a redirect.
So enabling the fields hidden, starttime, endtime would be very helpful.
Maybe just load the Access pallette is all what you need and take care in ext_tables.sql and your Repository?
For some reasons I had NULL values in the last_referer column which lead to SQL errors during the migration.
#1: PHP Warning: Declaration of Serfhos\MyRedirects\ViewHelper\FlashMessagesViewHelper::render($renderMode = self::RENDER_MODE_UL) should be compatible with TYPO3\CMS\Fluid\ViewHelpers\FlashMessagesViewHelper::render($renderMode = NULL, $as = NULL) in ..\typo3conf\ext\my_redirects\Classes\ViewHelper\FlashMessagesViewHelper.php line 9
Is it possible that you take the following change in your code?
/**
* Renders FlashMessages and flushes the FlashMessage queue
* Note: This disables the current page cache in order to prevent FlashMessage output
* from being cached.
*
* @see \TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController::no_cache
* @param string $renderMode @deprecated since TYPO3 CMS 7.3. If you need custom output, use <f:flashMessages as="messages"><f:for each="messages" as="message">...</f:for></f:flashMessages>
* @param string $as The name of the current flashMessage variable for rendering inside
* @return string rendered Flash Messages, if there are any.
* @api
*/
public function render($renderMode = self::RENDER_MODE_UL, $as = null)
I executed the upgrade wizard after applying DB changes - all redirects stopped working. Also newly created redirects do not work. I don't get any exception, warning or log. Only a 404 instead of a redirect. So can not really tell what's actually going wrong here.
TYPO3 supports custom record links.
Even if there is no GUI support yet (see #52) one can manually insert a record URN into the destination
field of a redircect. Manually inserting a t3://record?identifier=<identifier>&uid=<record-uid>
URL here causes an exception on save:
Uncaught TYPO3 Exception
Argument 2 passed to TYPO3\CMS\Core\Imaging\IconFactory::getIconForRecord() must be of the type array, null given, called in /var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Form/Element/InputLinkElement.php on line 402
TypeError thrown in file
/var/www/vendor/typo3/cms/typo3/sysext/core/Classes/Imaging/IconFactory.php in line 137.
20 TYPO3\CMS\Core\Imaging\IconFactory::getIconForRecord(NULL, NULL, "small")
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Form/Element/InputLinkElement.php:
00400: $data = [
00401: 'text' => sprintf('%s [%s:%d]', $recordTitle, $tableTitle, $linkData['uid']),
00402: 'icon' => $this->iconFactory->getIconForRecord($table, $record, Icon::SIZE_SMALL)->render()
00403: ];
00404: break;
19 TYPO3\CMS\Backend\Form\Element\InputLinkElement::getLinkExplanation("t3://record?identifier=<identifier>&uid=<record-uid>")
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Form/Element/InputLinkElement.php:
00202: $resultArray = $this->mergeChildReturnIntoExistingResult($resultArray, $fieldControlResult, false);
00203:
00204: $linkExplanation = $this->getLinkExplanation($itemValue ?: '');
00205: $explanation = htmlspecialchars($linkExplanation['text']);
00206: $toggleButtonTitle = $languageService->sL('LLL:EXT:lang/Resources/Private/Language/locallang_core.xlf:buttons.toggleLinkExplanation');
18 TYPO3\CMS\Backend\Form\Element\InputLinkElement::render()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Form/Container/SingleFieldContainer.php:
00179: $options['renderType'] = $parameterArray['fieldConf']['config']['type'];
00180: }
00181: $resultArray = $this->nodeFactory->create($options)->render();
00182: return $resultArray;
00183: }
17 TYPO3\CMS\Backend\Form\Container\SingleFieldContainer::render()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Form/Container/PaletteAndSingleContainer.php:
00212:
00213: $options['renderType'] = 'singleFieldContainer';
00214: $singleFieldContentArray = $this->nodeFactory->create($options)->render();
00215:
00216: if (!empty($singleFieldContentArray['html'])) {
16 TYPO3\CMS\Backend\Form\Container\PaletteAndSingleContainer::createPaletteContentArray("to")
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Form/Container/PaletteAndSingleContainer.php:
00115: $fieldName = $fieldConfiguration['fieldName'];
00116: if ($fieldName === '--palette--') {
00117: $paletteElementArray = $this->createPaletteContentArray($fieldConfiguration['paletteName']);
00118: if (!empty($paletteElementArray)) {
00119: $mainStructureCounter ++;
15 TYPO3\CMS\Backend\Form\Container\PaletteAndSingleContainer::render()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Form/Container/TabsContainer.php:
00084: }
00085: $options['renderType'] = 'paletteAndSingleContainer';
00086: $childArray = $this->nodeFactory->create($options)->render();
00087:
00088: $tabElements[] = [
14 TYPO3\CMS\Backend\Form\Container\TabsContainer::render()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Form/Container/FullRecordContainer.php:
00081: }
00082:
00083: return $this->nodeFactory->create($data)->render();
00084: }
00085:
13 TYPO3\CMS\Backend\Form\Container\FullRecordContainer::render()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Form/Container/OuterWrapContainer.php:
00052: $options['renderType'] = 'listOfFieldsContainer';
00053: }
00054: $result = $this->nodeFactory->create($options)->render();
00055:
00056: $childHtml = $result['html'];
12 TYPO3\CMS\Backend\Form\Container\OuterWrapContainer::render()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Controller/EditDocumentController.php:
01124:
01125: $formData['renderType'] = 'outerWrapContainer';
01126: $formResult = $nodeFactory->create($formData)->render();
01127:
01128: $html = $formResult['html'];
11 TYPO3\CMS\Backend\Controller\EditDocumentController::makeEditForm()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Controller/EditDocumentController.php:
00944:
00945: // Creating the editing form, wrap it with buttons, document selector etc.
00946: $editForm = $this->makeEditForm();
00947: if ($editForm) {
00948: $this->firstEl = reset($this->elementsData);
10 TYPO3\CMS\Backend\Controller\EditDocumentController::main()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Controller/EditDocumentController.php:
01969:
01970: $this->init();
01971: $this->main();
01972:
01973: $response->getBody()->write($this->moduleTemplate->renderContent());
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/vendor/typo3/cms/typo3/sysext/backend/Classes/Http/RouteDispatcher.php:
00052: $targetIdentifier = $route->getOption('target');
00053: $target = $this->getCallableFromTarget($targetIdentifier);
00054: return call_user_func_array($target, [$request, $response]);
00055: }
00056:
7 TYPO3\CMS\Backend\Http\RouteDispatcher::dispatch(TYPO3\CMS\Core\Http\ServerRequest, TYPO3\CMS\Core\Http\Response)
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Http/RequestHandler.php:
00137: /** @var RouteDispatcher $dispatcher */
00138: $dispatcher = GeneralUtility::makeInstance(RouteDispatcher::class);
00139: return $dispatcher->dispatch($request, $response);
00140: }
00141: }
6 TYPO3\CMS\Backend\Http\RequestHandler::dispatch(TYPO3\CMS\Core\Http\ServerRequest)
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Http/RequestHandler.php:
00070: // Check if the router has the available route and dispatch.
00071: try {
00072: return $this->dispatch($request);
00073: } catch (InvalidRequestTokenException $e) {
00074: // When token was invalid redirect to login
5 TYPO3\CMS\Backend\Http\RequestHandler::handleRequest(TYPO3\CMS\Core\Http\ServerRequest)
/var/www/vendor/typo3/cms/typo3/sysext/core/Classes/Core/Bootstrap.php:
00313:
00314: // Execute the command which returns a Response object or NULL
00315: $this->response = $requestHandler->handleRequest($request);
00316: return $this;
00317: }
4 TYPO3\CMS\Core\Core\Bootstrap::handleRequest(TYPO3\CMS\Core\Http\ServerRequest)
/var/www/vendor/typo3/cms/typo3/sysext/backend/Classes/Http/Application.php:
00090: }
00091:
00092: $this->bootstrap->handleRequest($this->request);
00093:
00094: if ($execute !== null) {
3 TYPO3\CMS\Backend\Http\Application::run()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Resources/Private/Php/backend.php:
00022: $classLoader = require __DIR__ . '/../../../../../../vendor/autoload.php';
00023:
00024: (new \TYPO3\CMS\Backend\Http\Application($classLoader))->run();
00025: });
2 {closure}()
/var/www/vendor/typo3/cms/typo3/sysext/backend/Resources/Private/Php/backend.php:
00023:
00024: (new \TYPO3\CMS\Backend\Http\Application($classLoader))->run();
00025: });
1 require("/var/www/vendor/typo3/cms/typo3/sysext/backend/Resources/Private/Php/backend.php")
/var/www/vendor/typo3/cms/typo3/index.php:
00001: <?php
00002:
00003: require __DIR__ . '/sysext/backend/Resources/Private/Php/backend.php';
The redirect is saved nevertheless and works properly. However, editing the redirect becomes impossible since the same exception is thrown on opening the edit view.
We found that redirects are not working (404 error page) if Typo3 is configured for multiple domains. The realurl config array is then configured per domain as follows
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['_ here is the host name _']['pagePath']['rootpage_id']
As a workaround we changed the following method in class \KoninklijkeCollective\MyRedirects\Utility\ConfigurationUtility:
/**
* @return integer
*/
public static function getDefaultRootPageId()
{
$configuration = static::getConfiguration();
$host = $_SERVER['SERVER_NAME'];
if(isset( $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$host])){
return (int)($configuration['defaultRootPageId'] ?: ($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'][$host]['pagePath']['rootpage_id'] ?: 1));
}
return (int)($configuration['defaultRootPageId'] ?: ($GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['_DEFAULT']['pagePath']['rootpage_id'] ?: 1));
}
We propose that this patch should be inserted in the official repository
Kind regards
Bernhard Stöcker
Aktivweb GmbH
If a new redirect is created, forwarding status code 302 is temporary redirect by default. In most cases you work with a 301 status code. Is it possible to change the preselected status code to 301?
Given a path like Стать-дил
that does not work because of several reasons:
redirectAction
a call to urldecode is missing for the `$path``mb_strtolower
for 8 directlyWhen clicking any page the current page is used to filter redirect destinations. However, this skips t3://
URNs and is thus not that useful. Thus I'd like to see an option to disable this default filter.
It would be useful if the select field for domains would support the selection of mulitple domains. Now you can either choose one domain record or the "all domains" option.
Example: the redirect or link "/en/events" is saved for domain 1. If I try to create another redirect with the same link, TYPO3 adds a 0 to the link: /en/events0 so I can`t save 2 redirects with the same link for 2 different domains. This is why a mulitple selection in the domain field would make sense.
Saving redirect record with domain selector set to "All domains" results in
SQL error: 'Incorrect integer value: '' for column 'domain' at row 1' (tx_myredirects_domain_model_redirect:NEW591dc37a3de61455914839)
Steps to reproduce:
t3://page?uid=42 - - - &L=1
Expected outcome:
Requests to the source URL will be redirected to the translated page
Real outcome:
Requests tot he source URL get redirected to /
I've a multi-domain setup.
I want to set similar old URLs at different domains redirected to different target URLs.
This doesn't work as the extension changes the old URLs.
Example:
Redirect from
/oldurl/ > www.abcdomain/somethingnew/
/oldurl/ > www.xyzdomain/somethingelse/
This causes a change to
/oldurl/0 > www.xyzdomain/somethingelse/ ... so only the redirect for the first Domain works.
I do not enter the whole domain, I select it in the Domain-Dropdown.
Hi,
I have a v8 LTS setup with 2 domain trees. If my given target url looks like this: t3://page?uid=8 I get this:
Call to undefined method TYPO3\CMS\Core\Core\Bootstrap::loadCachedTca()
from my_redirects/Classes/Utility/EidUtility.php in line 44.
…
KoninklijkeCollective\MyRedirects\Utility\EidUtility::initializeTypoScriptFrontendController(1)
KoninklijkeCollective\MyRedirects\Service\RedirectService::generateLink("t3://page?uid=8")
Bedankt voor alles
Harald
Hi,
If we use the Ext. pagenotfoundhandling with your ext. the redirects not working. I think i found the Problem here EidUtility.php
I think pagenotfoundhandling is hooked into the Page rendering process and if you call
$controller->determineId();
the pagenotfoundhandling will start and so my_redirect ist not working.
Maybe you have an Idea to fix it ?
Cheers
When using relative or t3:// links as target an Exception is thrown.
Extension: 3.4.1
Typo3: 8.7.10
RealUrl: 2.3.2
The Exception:
'title' => 'Service Unavailable (503)',
'message' => 'No TypoScript template found!',
'code' => 1294587218,
'file' => '/var/www/vhost/typo3-core/typo3_src/typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php',
'line' => 2537,
Trace:
#0 /var/www/vhost/web/typo3conf/ext/my_redirects/Classes/Utility/EidUtility.php(64): TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController->getConfigArray()
#1 /var/www/vhost/web/typo3conf/ext/my_redirects/Classes/Service/RedirectService.php(304): KoninklijkeCollective\MyRedirects\Utility\EidUtility::initializeTypoScriptFrontendController(2)
#2 /var/www/vhost/web/typo3conf/ext/my_redirects/Classes/Service/RedirectService.php(282): KoninklijkeCollective\MyRedirects\Service\RedirectService->getTypoScriptFrontendController(2)
#3 /var/www/vhost/web/typo3conf/ext/my_redirects/Classes/Service/RedirectService.php(214): KoninklijkeCollective\MyRedirects\Service\RedirectService->generateLink('t3://page?uid=1...')
#4 /var/www/vhost/web/typo3conf/ext/my_redirects/Classes/Controller/RequestController.php(41): KoninklijkeCollective\MyRedirects\Service\RedirectService->handleRedirect(Array)
#5 [internal function]: KoninklijkeCollective\MyRedirects\Controller\RequestController->redirectAction(Array, Array)
#6 /var/www/vhost/typo3-core/typo3_src/typo3/sysext/core/Classes/Utility/GeneralUtility.php(3782): call_user_func_array(Array, Array)
#7 /var/www/vhost/typo3-core/typo3_src/typo3/sysext/frontend/Classes/Http/RequestHandler.php(90): TYPO3\CMS\Core\Utility\GeneralUtility::callUserFunction('KoninklijkeColl...', Array, Array)
#8 /var/www/vhost/typo3-core/typo3_src/typo3/sysext/core/Classes/Core/Bootstrap.php(315): TYPO3\CMS\Frontend\Http\RequestHandler->handleRequest(Object(TYPO3\CMS\Core\Http\ServerRequest))
#9 /var/www/vhost/typo3-core/typo3_src/typo3/sysext/frontend/Classes/Http/Application.php(79): TYPO3\CMS\Core\Core\Bootstrap->handleRequest(Object(TYPO3\CMS\Core\Http\ServerRequest))
#10 /var/www/vhost/typo3-core/typo3_src/typo3/sysext/frontend/Resources/Private/Php/frontend.php(23): TYPO3\CMS\Frontend\Http\Application->run()
#11 /var/www/vhost/typo3-core/typo3_src/typo3/sysext/frontend/Resources/Private/Php/frontend.php(24): {closure}()
#12 /var/www/vhost/typo3-core/typo3_src/index.php(3): require('/var/www/vhost/...')
#13 {main}
I already found a solution to this problem and will submit a pull request.
I just noticed that there are 4.x versions of this package available via Composer.
However, these versions are not available in the TER, is there a reason for this?
Hey folks,
I have a very fast page and check the code execution. The redirect check need a lot of power in the frontend, only because the objects are build with the ObjectManager. I checked the code, the ObjectManager features are not used at all (DI & initializeObject call). The performance is much faster if the internal objects are build with GeneralUtility::makeInstance only.
Regards,
Tim
It looks like we can't do a redirect like this :
index.php?id=123&L=1
to page index.php?id=456&L=1
This works but not wanted: index.php?id=123
to page index.php?id=456&L=1
It looks there is no way to send the L=1 parameter in the "from link".
After adding a new redirect and try it I get the following message:
Unknown Protocol
Opera was unable to open the link since no application associated with "t3://page?uid=97:" protocol was found on your system.
It seems my_redirects isn't converting the t3://page to a readable path. When I replace the code with the actual path the redirect works.
my_redirect: 3.4.1
realurl: 2.2.1
typo3: 8.7.9
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.