Tôi không thể đăng nhập sau khi di chuyển


9

Tôi đã tìm kiếm những gì cảm thấy như hàng trăm giải pháp và thực hiện tất cả chúng. Tôi cũng đã tìm kiếm trang web này để tìm câu hỏi tương tự, nhưng tôi không thể tìm thấy nó.

Tôi có một trang web phát triển và một trang web sản xuất. Để di chuyển giữa hai tôi sử dụng github đẩy và kéo. Đây không phải là một vấn đề trong quá khứ, tuy nhiên, tôi đã gặp phải vấn đề này nhiều lần. Sau khi di chuyển tệp, Drupal không còn cho phép tôi đăng nhập. Tôi thử thông tin đăng nhập của mình và ngay lập tức nhận được trang Truy cập bị từ chối.

Cookie trang web của tôi đang đọc và viết không có vấn đề. Tôi đã tìm ID ID và tìm thấy nó trong cơ sở dữ liệu. Vì vậy, các cookie dường như đang hoạt động tốt và các mục cơ sở dữ liệu đang hoạt động tốt.

Vấn đề mà tôi có thể thấy là các bản ghi phiên cơ sở dữ liệu không lưu bất kỳ id người dùng nào. Khi tôi thay đổi thủ công id người dùng trong bản ghi db thành 1, cho IP của tôi và sau đó làm mới trang web, tôi đã đăng nhập. Bạn có ý tưởng nào không?

ini_set('session.cookie_domain', 'exampleorg');
ini_set('session.cookie_domain','www.example.org');
ini_set('session.auto_start', 0);

Chỉ cần thực hiện một khám phá nhỏ ở đây. Trang web của tôi tiếp tục chuyển đổi giữa HTTPS và HTTP trong quá trình đăng nhập. Vì vậy, tôi tự hỏi nếu điều này là bỏ phiên.
Tư vấn thương mại điện tử

OMG TÔI TÌM KIẾM VẤN ĐỀ CỦA TÔI. Tôi đã thiết lập máy chủ ảo của mình sai cho SSL của tôi. SSL của tôi đã trỏ đến trang dev của tôi chứ không phải trang trực tiếp của tôi. Vì vậy, việc nó chuyển hướng tôi khi đăng nhập vào ssl có nghĩa là tôi đã hoàn toàn thay đổi trang web. điều đó thật kinh khủng ... đã đưa tôi cả ngày ..
Chuyên gia tư vấn thương mại điện tử

Câu trả lời:


5

Tôi cũng có vấn đề tương tự, và nó có liên quan đến mod_rewrite. Tôi đã kích hoạt mod_rewritelệnh sau và sự cố đã được khắc phục.

sudo a2enmod rewrite

Đôi khi nó là giải pháp đơn giản nhất. Cảm ơn bạn!
mcriecken

3

FYI, tệp của bạn tên miền phải phản ánh sự thay đổi đó:

ĐƯỢC: $cookie_domain = '.boldlygowherenomanhasgonebefore.com';
THAY ĐỔI: $cookie_domain = '.localhost';


Bạn đã thắng :) Đây chính xác là những gì tôi đã làm
qasimzee

1

Rõ ràng không phải là giải pháp của bạn nhưng đối với bất kỳ ai khác đến đây, tôi gặp vấn đề tương tự (không thể đăng nhập) nhưng vấn đề của tôi là một URL sạch được giải quyết như sau:

Có một cái gì đó đang xảy ra với các URL sạch, chúng đã hoạt động được, đó là lý do tại sao tôi loại bỏ chúng là vấn đề, nhưng đó là.

Cuối cùng tôi đã phải chỉnh sửa bảng biến trong DB (thay đổi LONGBLOB thành LONGTEXT để tôi có thể), tắt cờ URL sạch (đặt "1" thành "0"), xóa bộ nhớ cache để xóa phiên bản biến được lưu trong bộ nhớ cache.

Và sau đó mọi thứ hoạt động đúng.


0

Không phải điều này sẽ giải quyết được gốc rễ của vấn đề, nhưng nếu bạn cần đăng nhập, bạn luôn có thể nhận được liên kết đăng nhập một lần từ Drush:

drush user-login theusername
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.