Lỗi 404 - Không thể truy cập phụ trợ sau khi chuyển sang máy chủ mới


9

Tôi đã chuyển trang web của mình trên một máy chủ mới (tên miền giống nhau). Frontend đang hoạt động đúng nhưng trang đăng nhập quản trị viên 404 Not Foundbáo lỗi.

Hầu hết các bài đăng về vấn đề này đề xuất các giải pháp được đề cập trên bài đăng này Chuyển trang web Magento, URL bảng điều khiển quản trị cung cấp 404

Tôi đã thử tất cả chúng nhưng không có gì hiệu quả. Có điều gì khác tôi có thể làm để khắc phục điều này?

Câu trả lời:


16

Lý do cho lỗi này là store_id và website_id cho quản trị viên nên được đặt thành 0 (không). Nhưng, khi bạn nhập cơ sở dữ liệu vào máy chủ mới, bằng cách nào đó, các giá trị này không được đặt thành 0.

Mở PhpMyAdmin và chạy truy vấn sau trong cơ sở dữ liệu của bạn: -

SET FOREIGN_KEY_CHECKS=0;
UPDATE `core_store` SET store_id = 0 WHERE code='admin';
UPDATE `core_store_group` SET group_id = 0 WHERE name='Default';
UPDATE `core_website` SET website_id = 0 WHERE code='admin';
UPDATE `customer_group` SET customer_group_id = 0 WHERE customer_group_code='NOT LOGGED IN';
SET FOREIGN_KEY_CHECKS=1;

Sao lưu cơ sở dữ liệu trước khi thực hiện bất kỳ thay đổi cũng xem tệp nhật ký để tìm vấn đề chính xác. Ngoài ra, bạn có thể tham khảo liên kết 404 lỗi quản trị magento Hy vọng điều này hữu ích cho bạn


1
Xin chào, tôi đã làm điều đó, nhưng không hoạt động.
zekia

Xin lỗi vì điều đó ...
Bhargav Mehta

Liên kết gợi ý cùng một giải pháp mà bạn đã đề cập và tôi cũng đã xóa bộ nhớ cache. Vẫn chưa được sửa mặc dù
zekia

4

Bản thân tôi đã gặp phải một vài điều có thể gây ra điều này

  • đảm bảo .htaccess được đặt đúng chỗ trong thư mục gốc
  • đảm bảo mod_rewriteđược bật trên máy chủ mới
  • kiểm tra các url cơ sở trong core_config_databảng
  • đảm bảo bộ nhớ đệm được tắt hoặc được làm mới
  • kiểm tra chủ sở hữu tập tin và quyền của các tập tin

2

Bạn cần đến máy chủ của mình trực tiếp và thực hiện việc này thông qua SSH / FTP

Bạn phải xóa các tập tin sau

 app/etc/use_cache.ser

Nếu bạn gặp lỗi sau đó

 Notice: Undefined index: 0 in /srv/www/vhosts/javra.com/htdocs/munchad2/app/code/core/Mage/Core/Model/Mysql4/Config.php on line 92

Sau đó đi đến Quản lý cơ sở dữ liệu của bạn.

Mở PhpMyAdmin Truy cập cơ sở dữ liệu của bạn Bấm SQL Chạy truy vấn SQL sau: _

SET FOREIGN_KEY_CHECKS=0;
UPDATE `core_store` SET store_id = 0 WHERE code='admin';
UPDATE `core_store_group` SET group_id = 0 WHERE name='Default';
UPDATE `core_website` SET website_id = 0 WHERE code='admin';
UPDATE `customer_group` SET customer_group_id = 0 WHERE     customer_group_code='NOT LOGGED IN';
SET FOREIGN_KEY_CHECKS=1;

Một số điều kỳ lạ xảy ra với bộ đệm khi bạn di chuyển cơ sở dữ liệu từ máy chủ này sang máy chủ khác nên có vẻ như bạn cần phải xóa nó.


chào kiểm tra Giải pháp này?
Nikunj Vadariya

2

HÃY THỬ NÀY..bạn nhập dự phòng db db cơ sở dữ liệu của bạn thêm dòng bên dưới vào đầu tệp .sql. Điều này sẽ ngăn SQL tự động gán id của 1 khi chúng ta cần nó là 0.

/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */

nếu không thành công, hãy kiểm tra liên kết này sau khi dùng thử Magento 404 đã đề cập ở trên trên Trang quản trị


2

Mở PhpMyAdminvà chạy truy vấn sau trong cơ sở dữ liệu của bạn

SET FOREIGN_KEY_CHECKS=0;
UPDATE `core_store` SET store_id = 0 WHERE code='admin';
UPDATE `core_store_group` SET group_id = 0 WHERE name='Default';
UPDATE `core_website` SET website_id = 0 WHERE code='admin';
UPDATE `customer_group` SET customer_group_id = 0 WHERE customer_group_code='NOT LOGGED IN';
SET FOREIGN_KEY_CHECKS=1;

sau đó xóa hai thư mục khỏi file manager->var -> cache & session


1
Trái ngược với những gợi ý khác, đây là quy trình chính xác tôi cần để chạy. Truy vấn hoạt động để có quyền truy cập nhưng tôi vẫn phải xóa 2 thư mục khác.
aknatn

1

chỉ cần thêm chúng vào .htaccess

<IfModule mod_rewrite.c>

############################################
## Enable rewrites

    Options +FollowSymLinks
    RewriteEngine on

############################################
## You can put here your magento root folder
## path relative to web root

    #RewriteBase /magento/

############################################
## Workaround for HTTP authorization
## in CGI environment

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

############################################
## TRACE and TRACK HTTP methods disabled to prevent XSS attacks

    RewriteCond %{REQUEST_METHOD} ^TRAC[EK]
    RewriteRule .* - [L,R=405]

############################################
## Never rewrite for existing files, directories and links

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l

############################################
## Rewrite everything else to index.php

    RewriteRule .* index.php [L]

</IfModule>

1

Chúng tôi đã chuyển máy chủ một vài lần và mỗi lần chúng tôi gặp vấn đề tương tự hoặc tương tự. Chúng tôi đã thực hiện tất cả các tập lệnh mà chúng tôi chạy trên mỗi máy chủ mới và nó đã hoạt động để khắc phục tất cả các sự cố của chúng tôi trong hai lần di chuyển gần đây, bạn có thể thực hiện nó! Vấn đề thường xảy ra xung quanh url cũ bị kẹt hoặc lưu vào bộ nhớ cache ở đâu đó hoặc không có quyền ..

rm -rf var/cache
rm -rf var/full_page_cache/
rm -rf media/catalog/product/cache
rm -rf var/session/*
php shell/indexer.php --reindexall
chown -R apache .
systemctl restart mysqld
systemctl restart httpd 

find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
find feeds -type f -exec chmod 644 {} \;
chmod 777 var -R
chmod 777 media -R
chcon -R -t httpd_sys_rw_content_t .
chcon -Rv --type=httpd_sys_content_t ..

0

Bạn cũng có thể thử thêm index.php vào url như thế này:

https://website.test/index.php/admin
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.