Tenemos un sitio principal en example.com. Iniciar sesión example.com/adminfunciona bien allí.
Pero en un sitio de prueba en test.example.com/adminNo puedo iniciar sesión en el administrador sin eliminar primero todas las example.comcookies. Entonces puedo iniciar sesión, pero tan pronto como inicie sesión, example.com/adminmi siguiente clic en el servidor de prueba me devuelve a la página de inicio de sesión.
No sé si esto afecta los inicios de sesión de los clientes.
¿Hay alguna configuración en el sitio principal o en el sitio de prueba que resolvería este problema?
magento-1.9
admin
login
cookie
Buttle Butkus
fuente
fuente

.frente del dominio, es importante!example.comadministrador, eltest.example.comadministrador o ambos?example.com, el otrotest.example.com. Ambos tienen sus propios administradores. Pero solo me está diciendo que establezca un dominio para uno de los administradores. ¿Estás diciendo que debería dejar el otro en blanco?test.example.comy en la tienda principalwww.example.compara evitar la superposición de cookies.Anna hace algunos buenos comentarios y su respuesta funcionará para mucha gente, pero no para mí, así que estoy publicando mi propia respuesta. Quizás mi problema fue mucho más fundamental que el que ella aborda.
Mi solución fue cambiar el dominio de mi sitio de
example.comawww.example.com. De hecho, mi investigación en Internet sugiere que la razón por la cual los sitios como Amazon, Google, Ebay y cualquier otro destino web importante usan elwwwprefijo puede deberse en gran parte a la forma en que funcionan las cookies. Tal vez no.La forma predeterminada en que funciona una cookie es que se aplica a todos los subdominios. Entonces, si le
example.comenvía una cookie, entonces usted visitamail.example.com,smile.example.comodevsite.example.com, entonces su navegador enviará esa cookie a esos sitios y esos sitios intentarán usar la cookie. Pero no podrán encontrar su sesión a menos que todos usen una carpeta de sesión común. E incluso entonces, es probable que tenga problemas debido a las diferentes configuraciones de la base de datos, las diferentes estructuras de aplicación, etc.Hacer el cambio implicó crear redirecciones 301 en mi archivo htaccess raíz, cambiar las URL seguras / inseguras en la
core_config_datatabla de la base de datos magento , cambiar el sitioServerNameen ApacheVirtualHostsy actualizar la configuración de DNS / servidor de nombres. Pero valió la pena.Al crear mi sitio principal
www.example.com, sus cookies ahora solo se aplicarían a subdominios del mismo, comomail.www.example.com(y no tenemos ninguno de esos subdominios). Los navegadores de los clientes que obtienen lawww.example.comcookie no la envíandevsite.example.com, y el problema está resuelto. Además, es realmente bueno tener un nombrewwwdelante de nuestro dominio.fuente
Simplemente puede cambiar el nombre de la cookie adminhtml para los subdominios.
Dos cambios en el archivo
app/code/core/Mage/Core/Controller/Varien/Action.php.En función
preDispatchcambiar líneasa
En
setRedirectWithCookieCheckcambio de funcióna
Y luego de esa búsqueda de texto
en todos los archivos y reemplazarlo con
si se encontrara alguna ocurrencia.
fuente
adminhtmlpara el dominio.example.com. Cuando intenta autorizar al test.example.com/admin, trata de hacer algo con la cookieadminhtmlpara.test.example.com. Los problemas difieren en la configuración de Magento. El principal problema es que no puede modificar la cookie del dominio principal desde el subdominio. El código anterior hace que Magento cree cookiesadminhtmlpara example.com y cookiesadminhtml_subdomainpara subdominio.ejemplo.com, por lo que no se mezclarán de ninguna manera. Cambiesubdomaina la correcta que usa.Si aún no puede iniciar sesión en su interfaz (no se puede crear la sesión del cliente) debido a problemas con las cookies, anule el archivo principal correspondiente
y
Comente las líneas señaladas en este hilo. Esto ha solucionado el problema con el inicio de sesión del cliente en la interfaz de la tienda de versiones anteriores a la 1.8.x
/magento//a/34057/695
fuente