2011-12-31 68 views
17

Tôi đang lưu trữ trang web wordpress trên ec2 và tôi đang cố gắng cập nhật chủ đề của mình thông qua màn hình quản trị. Nó yêu cầu tôi cho Tên máy chủ và tên người dùng và mật khẩu ftp. Có phải ec2-xxx.compute-1.amazonaws.com:22 tên máy chủ của tôi không? Tôi đã thử cùng với ec2user và root cho tên người dùng ftp của tôi nhưng không may mắn. Tôi đang làm gì sai?Cập nhật chủ đề wordpress trên ec2

+0

_Its hỏi tôi cho Hostname và tên người dùng và mật khẩu ftp. _ "Nó là cái gì? Màn hình quản trị nào? Chương trình hoặc dịch vụ nào đang yêu cầu điều này? Bạn có tự tin rằng bạn có thể tin tưởng nó? Tên người dùng và mật khẩu qua FTP là khá cổ, SFTP đã được bình thường trong một thập kỷ nay ... – sarnold

+0

Màn hình quản trị wordpress yêu cầu thông tin này. Một phần của bảng điều khiển. Tôi đang sử dụng tùy chọn sftp của họ. –

+1

@ sarnold Quản trị viên WordPress sẽ cố gắng cập nhật các chủ đề/plugin của bạn qua FTP/SFTP. – ceejayoz

Trả lời

5

Tên máy chủ của bạn sẽ là ec2-107-20-192-98.compute-1.amazonaws.com.

Tên người dùng của bạn sẽ là tên người dùng bạn sử dụng cho SFTP đối với trường hợp bình thường - ec2user đối với một số loại cá thể, ubuntu cho Ubuntu AMIs, v.v. EC2 thường không sử dụng mật khẩu, thích khóa SSH, vì vậy bạn sẽ phải đặt mật khẩu cho tài khoản của bạn bằng cách thực hiện passwd trên dòng lệnh.

+1

Còn tên người dùng thì sao? Đó có phải là root hoặc ec2user không? –

+0

Điều đó tùy thuộc vào AMI. Đó là bất cứ điều gì bạn thường sử dụng để SSH/SFTP. – ceejayoz

0

ec2-107-20-192-98.compute-1.amazonaws.com:22 đại diện cho cả tên máy chủ cổng ssh. (SSH bình thường trên cổng 22, mặc dù nó có thể chạy trên bất kỳ cổng nào.)

Chỉ thử ec2-107-20-192-98.compute-1.amazonaws.com trong trường tên máy chủ.

Tôi vẫn hoài nghi về trang web yêu cầu tên người dùng và mật khẩu. Có vẻ hơi ngớ ngẩn với tôi, vì bạn chỉ nên sử dụng SFTP để tải lên trực tiếp bất kỳ nội dung nào bạn muốn bằng cách sử dụng khóa nhận dạng SSH thay vì mật khẩu.

+0

Tôi chỉ đang cố gắng sử dụng các tính năng wordpress tích hợp cho phép bạn thực hiện việc này mà không cần đi xuống dòng lệnh. Tôi không ở máy tính bình thường của tôi với tất cả các ssh của tôi thiết lập trên nó. Có thể tôi phải thiết lập mật khẩu như ceejayoz nói nếu tôi muốn đi xuống tuyến đường mà tôi hiện đang đi. –

+0

@sarnold cho tốt hơn hoặc tồi tệ hơn, đó là cách cập nhật Wordpress hoạt động (xem: http://codex.wordpress.org/Updating_WordPress) nếu người dùng Apache/Http không có quyền thay đổi tệp. Bạn cũng có thể * cũng * cập nhật từ dòng lệnh, nhưng nếu bạn muốn sử dụng gui WP, bạn cần một người dùng ftp hoặc ssl/pass. – Amanda

+0

@Amanda: Tôi chắc chắn sẽ gọi đó là _for worst_. :) [Sự hoài nghi của tôi cảm thấy hợp lý] (http://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wordpress). (Cấp, rất nhiều trong số đó là do plugin, nhưng _wow_.) – sarnold

2

Hãy thử thêm thông tin FTP wp-config.php: http://codex.wordpress.org/Editing_wp-config.phphttp://codex.wordpress.org/Editing_wp-config.php#WordPress_Upgrade_Constants

Điều đó sẽ làm cho WP quản trị ngừng hỏi để biết chi tiết FTP. Nhưng tùy thuộc vào cách bạn đã thiết lập quyền thông qua dòng lệnh, có thể phải đi đến dòng lệnh để chỉnh sửa các tệp như wp-config.php. Và bạn có thể không có đủ quyền để tải lên và cho WP giải nén một chủ đề.

Theo câu trả lời khác, tôi sử dụng SFTP với một máy chủ của ec2-xx-xxx-xx-xx.compute-1.amazonaws.com tên người dùng của ec2-user

+0

Và bạn làm gì để có mật khẩu? – AlxVallejo

+0

Bạn nhập mật khẩu vào wp-config.php; xem liên kết ở trên. Lý tưởng nhất, với SFTP, bạn thiết lập nó để sử dụng một khóa SSH, không phải là một mật khẩu, như @ceejayoz chỉ ra trong câu trả lời của mình. – markratledge

41

Bỏ qua các thông tin FTP hoàn toàn và chỉ cần thay đổi sự cho phép của cấu trúc thư mục nơi Wordpress được cài đặt.

VIA SSH

sudo chown -R apache:apache path/to/wordpress 
  • sudo đảm bảo bạn thực hiện như là người dùng gốc
  • chown sẽ thay đổi chủ sở hữu của thư mục
  • -R sẽ làm cho nó đệ quy, do đó, nó thay đổi tất cả các tệp và thư mục trong phạm vi
  • apache: apache là người sử dụng: nhóm

Và sau đó đường dẫn đến wordpress. Có thể là /var/www/html/sitename.com hoặc nếu bạn điều hướng đến thư mục nơi Wordpress được cài đặt, bạn có thể sử dụng dấu chấm (.) Để cho nó thay đổi thư mục hiện tại. Điều này sẽ thực hiện là do đó bạn không thể sao chép tệp qua sftp, do đó, tốt nhất là hãy thay đổi ít nhất thư mục chủ đề trở lại người dùng ec2: người dùng và nhóm người dùng ec2.

Vì vậy, điều này thay đổi lại cho người sử dụng ssh/SFTP của bạn:

sudo chown -R ec2-user:ec2-user path/to/wordpress 

Bạn có thể gán các thư mục để người dùng ftp và nhóm apache và sau đó làm cho họ nhóm ghi là tốt. Điều này sẽ cho phép bạn ftp vào thư mục, và cho phép tất cả mọi thứ được tự động cập nhật trong Wordpress.

// Set the wp-contents into the apache group and then make files group writable 
sudo chgrp -R apache wp-content 
sudo chmod -R g+w wp-content 
// This makes new files created in wp-content and all of its sub-directories group-writable. 
sudo chmod g+s wp-content 

Sau đó thêm video này vào wp-config.php để buộc Wordpress để cập nhật khi chỉ áp dụng này wp-content:

define('FS_METHOD', 'direct'); 

Bạn cũng có thể áp dụng cho toàn bộ Wordpress cài đặt để cập nhật tự động Wordpress và không chỉ các plugin/chủ đề. Nếu bạn làm điều này, tôi sẽ khuyên bạn nên đặt tập tin wp-config.php của bạn một thư mục trên cài đặt Wordpress của bạn mặc dù, vì vậy bạn có thể khóa nó xuống một cách riêng biệt.

EDIT: Bất cứ khi nào tôi đang gặp rắc rối phép trên EC2, tôi đi đến thư mục gốc trang web, và dán những dòng này trong tôi áp dụng nó cho toàn bộ Wordpress cài đặt những ngày này:.

sudo find . -type d -exec chmod 0755 {} \; 
sudo find . -type f -exec chmod 0644 {} \; 
sudo chown -R ec2-user:apache . 
sudo chmod -R g+w . 
sudo chmod g+s . 

Tôi sử dụng một cái gì đó tương tự trên máy Mac của tôi là tốt.

+0

Bạn cũng có thể thử nghiệm với người dùng ec2: apache và thay đổi quyền đối với nhóm có thể ghi. Đã chỉnh sửa ở trên để thêm mục này. – Jake

+2

Cảm ơn bạn vì điều này. –

16

Trong bạn wp-config.php dưới directives thêm dòng này:

define('FS_METHOD', 'direct'); 
+0

Đây là câu trả lời đúng (cho vấn đề của tôi). Cảm ơn bạn! – AlexR

0

Bạn chỉ có thể sử dụng 127.0.0.1 như hostname và kiểm tra FTP trong cài đặt ftp Wordpress. Để tiếp tục những gì đã nói:

  • dùng là như nhau bạn thực sự sử dụng để SSH/SFTP

  • mật khẩu cần phải được đặt/cập nhật đăng nhập qua SSH và gõ sudo passwd your-user-name

12

Bạn chỉ có thể giải quyết vấn đề này bằng cách thực hiện việc này qua ssh:

sudo chown -R đường apache/to/wordpress

sau đó

sudo chmod -R 755 path/to/wordpress

+3

Trong apache ubunut chạy như người dùng www-data. Không phải là người dùng apache –

+1

Có những gì anh chàng nói trên: "sudo chown -R www-dữ liệu đường dẫn/to/wordpress" giải quyết nó cho tôi! – silberbaum

Các vấn đề liên quan