Lưu ý: Chi tiết hơn về mã Magento gây ra sự cố và cách dọn dẹp tại đây ...
Hệ thống sao lưu Magento trong 1.6 trở lên có một tính năng không may trong đó nó sẽ thay đổi một số quyền truy cập tệp / thư mục nhất định, sau đó có thể vượt qua các biện pháp bảo mật như cài đặt SuExec, SuPHP hoặc cPanel WHM.
Lỗi gốc gây ra trang lỗi 500 sẽ hiển thị trong nhật ký máy chủ. Nhật ký lỗi máy chủ phải có sẵn trong cPanel của bạn hoặc trong thư mục nhật ký trong thư mục tài khoản của bạn. Nếu không, bạn có thể liên hệ với nhà cung cấp dịch vụ lưu trữ của mình để cho bạn biết những lỗi nào cho lỗi 500 đang được ghi lại.
Thông thường, xóa lỗi 500 cũng đơn giản như sử dụng WinSCP để thay đổi quyền. Sự thay đổi tệ hại và ngu ngốc thường là index.php
trong thư mục gốc Magento của bạn được cấp quyền 666 (mọi người có thể đọc và ghi được) thay vì các quyền 644 hoặc 664 không vi phạm kiểm tra bảo mật hệ thống. Ngoài ra kiểm tra một tập tin trong root magento của bạn được gọi maintenance.flag
và xóa nó.
Trong trường hợp xấu nhất, bản sao lưu có thể thay đổi tất cả các quyền của tệp / thư mục và sau đó bạn phải chạy một tập lệnh để thay đổi quyền của thư mục thành 755 và quyền của tệp thành 644.
Trang trợ giúp thương mại để thiết lập quyền truy cập tệp
Cho rằng Magento Một công ty e-Bay Inc. đã cho phép một số trang chấm dứt sự tồn tại trên trang web của họ, chuyển phần thịt của chủ đề ở đây sang bằng chứng liên kết. Đối với Magento 1.5+ như sau:
Dưới đây là cách đặt lại quyền truy cập tệp và thư mục của bạn nếu PHP đang chạy qua FastCGI, suPHP hoặc LSAPI:
find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod 550 mage
YMMV tùy thuộc vào nhà cung cấp dịch vụ lưu trữ, các tệp 664 và thư mục 775 CÓ THỂ cần thiết
Nếu PHP đang chạy dưới dạng một mô-đun (DSO), bạn sẽ cần phải làm điều này:
sudo find . -type f -exec chmod 644 {} \;
sudo find . -type d -exec chmod 755 {} \;
sudo chmod o+w var app/etc
sudo chmod 550 mage
sudo chmod -R o+w media
Trên trang đó có đề cập đến Công cụ dọn dẹp Magento (miễn là nó vẫn có sẵn) được chạy dưới dạng tập lệnh php. Một số người khuyên bạn nên chạy nó sau mỗi lần sao lưu hệ thống bảng điều khiển Magento Admin.
Tất nhiên, cách xung quanh là phân phối với bản sao lưu hệ thống Magento cho đến khi họ sửa nó và sử dụng bản sao lưu tarball / mysqldump kết hợp như một thao tác được viết theo kịch bản thủ công hoặc để thiết lập một hệ thống khác và sử dụng rsync và thực hiện một kết xuất mã hóa được mã hóa bằng cron. được kéo qua khi sao lưu rsync được chạy.