7

Tengo un enlace que apunta a la página restringida. Cuando accedo al enlace directamente en estado de cierre de sesión, se lo redirecciona a 404. En realidad, debe redireccionar al formulario de inicio de sesión.TYPO3: 404 para la página de acceso restringido en lugar del formulario de inicio de sesión

me trataron:

config { 
    typolinkLinkAccessRestrictedPages=PAGE_ID 
    typolinkLinkAccessRestrictedPages_addParams = &return_url=###RETURN_URL###&pageId=###PAGE_ID### 
    } 

no trabajar.

También probé el estado de inicio de sesión redirige el complemento, sin uso.

Alguien sabe cómo hacer esto? Estoy usando la versión 4.4.8 de TYPO3.

+0

Sería de gran ayuda si nos hubieran dicho sobre la versión de TYPO3 - un error se archiva sobre etiquetado incorrecto en la versión 4.5: http://forge.typo3.org/issues/24942. Sin embargo, las posibilidades de que esto te ayude son bajas. – Mateng

+0

Otra pregunta: ¿Estás usando RealURL o tal vez una configuración multidominio (ver error en 4.3 http://bugs.typo3.org/view.php?id=11412)? ¿Qué has puesto realmente en la configuración de TS donde encontramos "PAGE Id"? ¿Qué sucede si reemplaza los marcadores ### RETURN_URL ### y ### PAGE_ID ### con los valores reales?Lamento no tener una respuesta adecuada, pero tal vez estas sugerencias ayuden a dar un paso adelante. – Mateng

+0

Estoy usando typo3 versión 4.4.8. Intenté reemplazar marcadores por valores. Todavía redirige a la página 404. – Sivakumar

Respuesta

2

Como esto aún no ha sido respondido, ¿esto ayuda?

# Check if user is logged in: 
[usergroup = *] 
# do something 
[else] 
page.config > 
page.config.additionalHeaders = Location: http://www.yourdomain.org/login.html 
[end] 

Recientemente he publicado esto a another questions y se me ocurrió que podría ser una solución adecuada para su problema tomando.

Found here

+1

Una mejor forma de detectar a un usuario que no ha iniciado sesión es mediante '[loginUser =]'. Ahora puede proteger dos líneas, incluido el [else]. – Ludwig

+0

Suena razonable. No hay tiempo para probar en este momento, sin embargo;). – Mateng

1

No estoy seguro de cómo hacer el trabajo correctamente la redirección, pero tal vez un poco de antecedentes será útil.

typolinkLinkAccessRestrictedPages solo interactúa con la generación de enlaces. De esta manera, en cualquier lugar que tenga un enlace a una página restringida de acceso, debe obtener un enlace que apunte a la página "PAGE Id". Sospecho que está utilizando su pid de inicio de sesión en lugar de PAGE Id, que creo que debería funcionar, pero no he usado esta función en particular. Tengo typolinkLinkAccessRestrictedPages = NONE que hace que aparezcan todos los enlaces, vinculados a la URL correcta, pero solo los usuarios que hayan iniciado sesión cargarán correctamente esas páginas.

Si alguien, sin iniciar sesión, usa un marcador en una página restringida de acceso, o hace clic en uno de estos enlaces, o escribe directamente la dirección, o lo que sea, se encontrará con el manejo 404 de TYPO3 (con mensaje de error: ID no era una página accesible). Para cambiar la forma de TYPO3 maneja estos errores, es necesario cambiar la función de TYPO3 a través de esta configuración en localconf.php:

$TYPO3_CONF_VARS["FE"]["pageNotFound_handling"] 

No sé si hay una manera limpia de simplemente redirigir automáticamente a la página de inicio de sesión sin la piratería la páginaNotFound_handling.

En cuanto a la solución typoscript, eso no funcionaría para mi sitio, porque el desencadenante no es si alguien está conectado o no (a menudo no iniciarán sesión): el desencadenante de mi sitio es tratando de acceder a una página protegida cuando no está conectado. No quiero que redireccione a todos que no han iniciado sesión porque muchas páginas no requieren ningún inicio de sesión.

0

Como parece que no existe una solución adecuada para este comportamiento de TYPO3, utilizo la siguiente solución con RealURL.

  1. crear una página 404 en
  2. TYPO3, establecer el segmento de trazado URL Hablando a "404-error" y comprobar Anular toda la ruta de página
  3. Añadir un texto que describa lo que está sucediendo (es decir,"La página no existe o está restringido, por favor login")
  4. Añadir el plugin felogin a esa página y se esconden cuando los usuarios se registran en
  5. Conjunto [FE][pageNotFound_handling] = /404-error/ en la herramienta de instalación

Este 404- La página de error se muestra cada vez que un usuario solicita una página que no puede ver o una página que no existe. Cuando el usuario utiliza el formulario de inicio de sesión en la página, encontrará el contenido adecuado inmediatamente después de iniciar sesión porque el URI no cambió en absoluto (cuando no hay una redirección configurada para el complemento fe_login).

0

Y encontré otra solución que parece que debería funcionar bien.

# pages and subpages starting at 123 and 321 are restricted 
[PIDinRootline = 123,321] && [loginUser = ] 
    page.headerData.666 = TEXT 
    page.headerData.666 { 
     data = getIndpEnv:TYPO3_REQUEST_URL 
     wrap = <meta http-equiv="refresh" content="0; URL=/passwort/?referer= | " /> 
    } 
[global] 

Aviso importante: no restringen la página completa, sólo los contenidos de la página. De lo contrario, RealURL activará el controlador 404.

En este momento, page.config.additionalHeaders (como el utilizado por @Mateng) no es compatible con stdWrap, aunque no puede agregar un referrer para redirigir a la página deseada después de iniciar sesión (consulte TYPO3 Forge y vote por la función solicitada).

0

Fe_login sola no puede hacer esto ...

Siga estos pasos ::

  1. Instalar "pagenotfoundhandling" extensión después de Entrar felogin configuración .
  2. Configure la página 403 como página de inicio de sesión en la configuración de extensión "pagenotfoundhandling".

Entonces, cuando intenta acceder a la página "Acceso restringido", "pagenotfoundhandling" redirigirá a la página de acceso a continuación pagenotfoundhandling redirección mango para solicitar de nuevo la página. He probado esto en TYPO3 6.2.14

0

Solución completa: 1. por primera vez en typo3conf/LocalConfiguration.php hay que añadir:

'FE' => [ 
     'pageNotFound_handling' => 'REDIRECT:/login/', 
     "pageNotFound_handling_statheader" => 'HTTP/1.1 404 Not Found', 
     ... 
], 
  1. continuación, agregue a TypoScript:

    '

    config { typolinkLinkAccessRestrictedPages = YOUR_LOGIN_PAGE_ID typolinkLinkAccessRestrictedPages_addPa carneros = & return_url = ### return_url ### } = plugin.tx_felogin_pi1.redirectMode árbitro

'

Cuestiones relacionadas