En magento admin url, la palabra "admin" aparece dos veces. ¿Cómo quitar el segundo?

8

Tengo una situación en la que la URL de administración de mi cliente es algo como esto;

http://www.example.com/index.php/admin/admin/dashboard/index/key/0981a6bd2f5a06fec85d3c9e297849a0/

la palabra admin aparece dos veces, cómo eliminar una. verifiqué la aplicación / etc / local.xml y en magento admin-> system-> configuration-> admin, no hubo cambios en la configuración predeterminada.

Nota: Hice la misma pregunta en stackoverflow.com pero no obtuve respuesta en 3 días, por eso la volví a publicar aquí.

Haris
fuente
2
Por casualidad, ¿tienes la bandera Use Store Codes in URLconfigurada yes?
Marius
@ Mario gracias por señalar. Sí, el indicador se configuró en sí y lo cambié a no, el problema ya no está. Escríbalo en respuesta para que pueda aceptarlo como verdadero y también, por favor, si puede darme un poco más de tiempo para explicar sus usos. ya que mi cliente tampoco estaba al tanto de eso y me pidió que lo revisara. ¿Tendrá algún efecto adverso en el flujo de trabajo del sistema después de que lo desactive? Debido a este problema, algunas extensiones no funcionaban correctamente. De nuevo, gracias por tu ayuda.
Haris
1
He agregado mi respuesta con algunos detalles sobre cómo funciona.
Marius

Respuestas:

15

El adminaparece dos veces en la URL cuando se tiene la bandera Use Store Codes in URLconjunto a Yes.
Dado que la sección de administración es en realidad una vista de la tienda desde el punto de vista de Magento, su código (admin) se muestra en la url.
La segunda vez que aparece es porque admines la clave de ruta para los controladores adminhtml.
Por ejemplo, si cambia la clave de administrador url para backendpartir System->Configuration->Admin->Admin Base URL->Custom Admin Path, la URL se parecerá http://example.com/admin/backend/controller/action/.
En cuanto a las extensiones que no funcionan correctamente si tiene los códigos de tienda en las URL, significa que son extensiones mal escritas. El comportamiento de la extensión debería funcionar en ambos casos. Lo más probable es que tengan URL codificadas en algún lugar del código.

Marius
fuente
El problema debido a esta configuración de URL es que una pestaña en la página de administración del producto está dando un error 404. donde la URL de la pestaña se especifica como '' url '=> $ this-> getUrl (' module_name / catalog_product / action_name ', array (' _ current '=> true)),' ¿cuál sería la mejor manera de hacer esto?
Haris
1
@Saddam. Yo tenía razón. Esta es una extensión mal escrita. La URL del administrador debe tener el prefijo adminnot module_name. La solución es amplia para encajar aquí. Implica cambiar mucho del código de la extensión.
Marius
4

Prueba esto:

Check the values in /magentofolder/app/etc/local.xml and ensure all is good.
Log in and check the values at System > configuration > Web > Unsecure URL (and Secure URL) - make sure they are good (they should be, otherwise youd not be able to log in very easily.
Go to System > configuration > Advanced > Admin and set the value of use custom admin url to 'No' and remove any values, if any, in the URL box underneath it. Then save config.
If all these settings are correct, and youre seeing admin/admin, then check:

Sistema> Configuración> General> Web> Opciones de URL> Agregar código de tienda a URL

Allí debe haber establecido su valor 'Sí'.

Lo que esto hace es en la parte frontal que incluye el código de la tienda (en realidad, el código de vista de la tienda) a la URL para las configuraciones de la tienda múltiple, para que pueda acceder a una tienda como esta: http://xyz.com/index.php/ storecode1 / o http://xyz.com/index.php/storecode2/ ... etc.

Pero desafortunadamente también lo hace para el administrador (que tiene el código de tienda admin), por lo tanto, la ruta a su administrador ahora es admin / admin, el primero es el código de la tienda, el segundo es la ruta para servir la aplicación. Por lo tanto, algunas extensiones que no usan la ruta de URL de administración dinámica no funcionarán, probablemente obtendrá un 404 donde espera que su contenido esté en el cuerpo principal de la página.

La habilitación de la segunda opción en ese administrador (Sistema> configuración> General> Web> opciones de URL), es decir, "Redirigir a URL base si la URL solicitada no coincide" debería solucionar todo el problema.

Si todavía no soluciona su problema, entonces la última opción para solucionarlo es 'No' para la opción 'Agregar código de tienda a las URL'.

Mohit Kumar Arora
fuente
Gracias Mohit por explicarlo. pero como @Marius lo respondió primero, por eso acepté su respuesta como la respuesta correcta.
Haris