Người dùng quản trị không thể cập nhật WP


10

Tôi có một trang web chạy WP 3.3.2. Phần phụ trợ hiển thị một thanh có nội dung "WordPress 3.5 khả dụng! Vui lòng thông báo cho quản trị viên trang web."

Điều thú vị là tôi đã đăng nhập với một người dùng quản trị, tôi đã kiểm tra lại. Khi cố gắng truy cập trang cập nhật (tại wp-admin / update-core.php) tôi gặp lỗi này:

"Bạn không có đủ quyền để truy cập trang này."

Bất kỳ gợi ý về những gì có thể xảy ra ở đây? Cảm ơn.


Cài đặt mới? Bạn đã có plugin nào có thể sửa đổi khả năng của quản trị viên chưa?
RRikesh

Tôi đã tắt tất cả các plugin, nhưng điều đó không giúp được gì. Tôi chưa thực hiện cài đặt mới vì tôi có nhiều nội dung tôi sẽ phải chuyển sang cài đặt mới. Sẽ thử nếu không có giải pháp nào khác.
Tối thiểu

Câu trả lời:


1

Cố gắng tạo một người dùng quản trị mới trong db.

Thực hiện theo các bước sau, bạn sẽ có thể tạo người dùng quản trị viên mới, sau đó cập nhật và sau đó bạn có thể cung cấp lại quyền quản trị người dùng cũ của mình. Hoặc sử dụng người dùng mới.

Người dùng cũ của bạn có thể có cài đặt sai trong DB

http://www.dnawebagency.com/how-to-add-an-admin-user-to-the-wordpress-database


Cảm ơn, tôi đã thử điều đó và tôi có thể thêm một người dùng mới. Thật không may, người dùng mới cũng không có quyền cập nhật. Rất lạ.
Tối thiểu

Xin chào, thật lạ. Bạn đã thử tải xuống WP 3.3.2 bằng tay và sau đó ghi lại tất cả các tệp (thông qua ftp) (không phải tệp wp-config). sau đó thử cập nhật lên 3,5
mscgl

Mẹo hay, đã làm việc - cảm ơn! Tôi ghi đè thủ công các tập tin lõi WP của mình và sau đó có thể cập nhật lên 3.5.
Tối thiểu

Đó là một tin tuyệt vời :)
mscgl

28

Tôi đã có vấn đề này một lần.

Bạn nên kiểm tra wp-config.phptập tin của bạn và nếu bạn tìm thấy dòng này

define('DISALLOW_FILE_MODS',true);

thay đổi giá trị của nó thành false:

define('DISALLOW_FILE_MODS',false);

Hoàn hảo - một trường đại học đặt điều này trên một trang web mà chúng tôi quản lý nhầm nó với DISABLE_FILE_EDIT. Các lệnh tương tự vì vậy tôi cho rằng đó là một sai lầm dễ mắc phải.
John Reid

Công việc này tốt cho tôi nhờ sự giúp đỡ của bạn
Amit Verma

6

Đối với bất kỳ ai khác có vấn đề này, có một dòng khác mà bạn có thể phải tìm trong tệp wp-config hoặc hàm của bạn và thay đổi thành false:

define('DISALLOW_FILE_EDIT', true);

Cài đặt này có thể xuất hiện trong wp-settings.php
Kristjan Adojaan

3

WordPress đã nói với tôi rằng tôi không có 'đủ quyền' để cập nhật cài đặt của riêng mình ngay cả khi đăng nhập với tư cách Quản trị viên.
Tôi đã có dòng sau trong tệp wp-config.php của mình:
define('DISALLOW_FILE_MODS',true);
Tôi đã có thể áp dụng các bản cập nhật một lần nữa sau khi tôi thay đổi dòng này thành:
define('DISALLOW_FILE_MODS',false);


Cài đặt này có thể xuất hiện trong wp-settings.php
Kristjan Adojaan

1

Thêm mã sau vào một tệp trong thư mục gốc của bạn và đi đến trang đó.

<?php
define('WP_USE_THEMES', false);
require('wp-blog-header.php');

$role = get_role('administrator');

echo '<pre>';
print_r($role);
echo '</pre>';

Bây giờ, tìm kiếm [update_core]trong văn bản hiển thị. Đó là giá trị nên được 1.

Nếu không, hãy thêm dòng sau dòng sau $role = get_role('administrator')để thêm update_core khả năng cho quản trị viên.

$role->add_cap( 'update_core' ); 

Tải lại trang để xem giá trị của [update_core]1. Nếu có 1, bạn có thể thử cập nhật. Đừng quên xóa tập tin bạn đã thêm sau đó.

Cách 2:

Nhận trên PHPMyadmin và đi đến wp_usersbàn. Tìm ID người dùng của bạn. Bây giờ đi đến wp_usermetavà thay đổi wp_capabilitiesID người dùng của bạn thành a:1:{s:13:"administrator";b:1;}. Làm một bản sao lưu trước khi chạm vào cơ sở dữ liệu, chỉ trong trường hợp.


Cảm ơn, tôi đã thử cái này và nhận giá trị "1" cho [update_core]. Nhưng tôi vẫn không thể cập nhật bất cứ điều gì.
Tối thiểu

Thêm một đề nghị khác.
RRikesh

0

Tôi đã gặp vấn đề này một lần khi cập nhật cài đặt 3.9.19.

Tôi đã làm theo câu trả lời @RRikesh và mọi thứ dường như bình thường nhưng tôi vẫn không thể chạy cập nhật.

Hóa ra một define('DISALLOW_FILE_MODS',true);đã được cấu hình trong functions.php.

Vì vậy, yeah, tìm kiếm dòng đó trong của bạn wp-config.phpcũng như functions.php.

Không chắc chắn nếu thêm dòng đó vào functions.phplà thông lệ vì hầu hết các câu trả lời ở đây chỉ đề nghị xem xétwp-config.php


0

Thường thì bạn phải đối phó với việc cài đặt wordpress của bạn đúng quyền tệp và thư mục. Nếu bạn có thể đăng nhập vào máy chủ của mình thông qua SSH thì không có vấn đề gì cả.

  1. Đặt lại quyền của tất cả các tệp thành 664:

tìm / var / www / html / -type f -exec chmod 664 {} \;

  1. Đặt lại quyền của thư mục thành 775:

tìm / var / www / html / -type d -exec chmod 775 {} \;

  1. Nhận người dùng đang chạy Apache (Người dùng phải là hàng / cột đầu tiên):

ps phụ | grep apache

  1. Truy xuất các nhóm người dùng là một phần của:

nhóm [tên người dùng]

  1. Đặt lại nhóm thành nhóm chạy Apache:

chgrp -R [nhóm] / var / www / html /

Bây giờ bạn sẽ có thể cập nhật Wordpress tự động từ phụ trợ của bạn.


0

Tôi đã sửa nó bằng cách thay đổi một số giá trị bên trong wp-config.php.

define('DISALLOW_FILE_MODS',true);

thay đổi giá trị thành false:

define('DISALLOW_FILE_MODS',false);


1
Câu trả lời của bạn khác với những gì đã được đưa ra là gì? Ví dụ, này hay này một.
nmr

-1

Đây là một phát súng trong bóng tối, nhưng bạn có tình cờ có bất kỳ plugin mu nào có thể gây ra điều này không? wp-content/mu-plugins


Cảm ơn câu trả lời của bạn, nhưng không, tôi không cài đặt mu-plugin nào.
Tối thiểu

1
Thông thường các plugin xử lý vai trò & khả năng không nên được đặt trong thư mục mu-plugin. Vai trò và mũ được đặt khi kích hoạt plugin hoặc kích hoạt chủ đề vì chúng được lưu trữ trong cơ sở dữ liệu.
RRikesh

Ngoài ra, cố gắng truy cập các đối tượng vai trò trước khi các plugin được tải sẽ tạo ra một lỗi nghiêm trọng
shea
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.