Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено] Ошибка "Подтвердите действие" и кнопки "Купить" после переезда на другой домен


Recommended Posts

1) После переезда на новый домен в рамках одного хостинга при клике на "Зарегистрироваться" вылетает ошибка:

 

6bd6598bf8d16f8f2d9396ff767f0821.jpg

 

После ввода нужных данных выбрасывает на пустую страницу регистрации с этой же ошибкой.

 

2) Ошибка в выводе региона при регистрации, нет выпадающего списка с регионами:

48d60440a99cf8ff6f6a69b935c16c7c.jpg

 

3) Не работает кнопка купить. По клику ничего не происходит.

 

Сайт - adiel.com.ua, шаблон - elegantcart. Никаких манипуляций с модулями не было. Только смена домена и изменения в файлах config.php

Надіслати
Поділитися на інших сайтах


И сразу же отвечаю, вдруг кому пригодится. На хостинге поставил переадресацию с www.сайт.ком.юа на сайт.ком.юа. Убрал в config.php символы www в строках 2-5 и 8-9 и все заработало, как надо.

Надіслати
Поділитися на інших сайтах


  • 5 months later...
  • 7 years later...
В 09.02.2014 в 01:24, evolka сказал:

Напиши подробно пожалуйста в каких строчках нужно убрать www

Проблема в политике кроссдоменных запросов (CORS). 

Вероятно, вы находитесь на www.вашсайт.ру , а скрипт отправляет запрос на вашсайт.ру (либо наоборот) - это не нравится браузеру и он такие запросы блокирует.

Чтобы протестировать в этом ли проблема - достаточно перейти на вашсайт.ру и нажать на кнопку купить сейчас с него. Если скрипт работает нормально и товар в корзину добавляется, то для решения проблемы нужно сделать следующее:

в config.php убрать www в доменном имени. Например, было 

<?php
// HTTP
define('HTTP_SERVER', 'https://www.example.ru/');

// HTTPS
define('HTTPS_SERVER', 'https://www.example.ru/');

 

Стало:

<?php
// HTTP
define('HTTP_SERVER', 'https://example.ru/');

// HTTPS
define('HTTPS_SERVER', 'https://example.ru/');

 

В файле .htaccess нужно поставить редирект с www.вашсайт.ру на вашсайт.ру. Для этого добавляем 

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

RewriteCond %{ENV:HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

У меня в .htaccess рерайты уже были, поэтому я добавил только 
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L] 

 

На Nginx в файл nginx.conf нужно добавить директиву
if ($host ~ ^www\.(.+)$){ return 301 http://$1$request_uri; }

Змінено користувачем poroloner
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.