FTP 액세스를 제공하지 않고 WordPress 플러그인을 설치/업데이트할 수 있습니까?
SSH 키를 사용하여 SFTP만 사용하는 라이브 서버에서 WordPress를 사용하고 있습니다.
플러그인을 설치 및 업그레이드하고 싶은데 플러그인을 설치하려면 FTP 로그인을 입력해야 합니다.WordPress가 전체 프로세스를 처리하는 대신 수동으로 파일을 업로드하여 플러그인을 설치 및 업그레이드할 수 있는 방법이 있습니까?
는 WordPress에 쓸 수 하려고 할 때 합니다./wp-content
않으면 웹 필요한 에 대한 권한을 있으면 및 됩니다.그렇지 않으면 웹 서버가 필요한 파일에 대한 쓰기 액세스 권한을 가지고 있으면 업데이트 및 설치가 자동으로 처리됩니다.이 방법에서는 FTP/SFTP 또는 SSH에 액세스할 필요가 없지만 웹 서버에 특정 파일 권한을 설정해야 합니다.
Direct 및 SSH 방식을 사용할 수 없는 경우 다양한 방식을 순서대로 시도하고 FTP에 폴백합니다.
https://github.com/WordPress/WordPress/blob/4.2.2/wp-admin/includes/file.php#L912
는 WordPress에 ./wp-content
디렉토리로 이동합니다.이것이 성공하면 파일 소유권과 자체 uid를 비교하고 일치하는 경우 플러그인, 테마 또는 업데이트를 직접 설치할 수 있습니다.
어떤 할 수 .'FS_METHOD'
안에서wp-config.php
즉 「」, 「」의 어느쪽인가를 지정합니다.'direct', 'ssh', 'ftpext' or 'ftpsockets'
을 사용하다이것을 「direct」로 설정했을 때에, Web 유저(웹 서버가 동작하는 유저명)에게 적절한 기입 권한이 없는 경우는, 에러가 발생하는 것에 주의해 주세요.
요약하면 wp-content에 대한 권한을 변경하고 싶지 않은 경우(또는 변경할 수 없는 경우) wp-config.php 파일에 추가합니다.
define('FS_METHOD', 'direct');
사용 권한 설명:
- http://codex.wordpress.org/Updating_WordPress#Automatic_Update
- http://codex.wordpress.org/Changing_File_Permissions
앞에서 설명한 바와 같이 파마 수정은 더 이상 작동하지 않습니다.를 적당히 파마를 보면 다음 요.wp-config.php
:
define('FS_METHOD', 'direct');
는 안 입니다.wp-content
또는 에 대한 권한.777
제가 해야 할 일은 다음과 같습니다.
1) 다음과 같이 (재귀적으로) Apache 사용자에게 워드프레스 폴더의 소유권을 설정합니다.
# chown -R apache wordpress/
2) 다음과 같이 워드프레스 폴더의 그룹 소유권을 (재귀적으로) Apache 그룹으로 변경했습니다.
# chgrp -R apache wordpress/
3) 다음과 같이 소유자에게 디렉토리에 대한 모든 권한을 부여합니다.
# chmod u+wrx wordpress/*
마이 마이wp-content
에 ""가 있습니다.755
tw,, btw.
TL;DR 버전:
# chown -R apache:apache wordpress
# chmod u+wrx wordpress/*
- »
wp-config.php
define('FS_METHOD', 'direct');
- 에 를 기입 하게 하다
wp-content/
,wp-content/plugins/
. - 인스톨 합니다(를 「」에합니다).
wp-content/plugins
dir)를 참조해 주세요.
버전 3.2.1에서 동작.
wp-config.php
파일을 작성하고 다음 행을 추가합니다.
define('FS_METHOD', 'direct');
이건 나한테 효과가 있어...감사해요.
wp-config로 빠르게 변경해 주세요.php
define('FS_METHOD','direct');
이상입니다. FTP 없이 워드프레스 업데이트를 즐기십시오!
대체 방법:
WordPress 업데이트를 쉽게 하기 위해 이 방법을 사용할 수 없는 호스트가 있습니다.다행히 이 해충이 FTP 사용자 이름과 비밀번호를 입력하지 않도록 하는 다른 방법이 있습니다.
다시 wp-config.php 파일의 MYSQL 로그인 선언 후에 다음 사항을 추가합니다.
define("FTP_HOST", "localhost");
define("FTP_USER", "yourftpusername");
define("FTP_PASS", "yourftppassword");
경경에서 php_mod
로로 합니다.fastcgi
cgi
&SuEXEC
유효(ISPConfig 사용자).저는 좋아요.
If don't work, try to change 효과가 없으면 변경해 보십시오.wp-content
to 로.775
as ~하듯이root
★★★★★★★★★★★★★★★★★」sudo
user:사용자:
chmod -R 775 ./wp-content
Then Add to 다음에 추가wp-config.php
:
define('FS_METHOD', 'direct');
행운을 빌어요
업데이트 및 테마 업로드에 SSH2를 사용할 수 있도록 하려면 SSH 키를 생성하고 PHP SSH 모듈을 설치해야 합니다.그러면 WordPress가 SSH2를 사용할 수 있음을 감지하고 업로드/업그레이드를 수행할 때 다른 옵션(SSH2)이 표시됩니다.
1) PHP 모듈이 debian용으로 설치되어 있는지 확인합니다.
sudo apt-get install libssh2-php
2) SSH 키를 생성하고 패스프레이즈를 추가하는 것은 옵션입니다.
ssh-keygen
cd ~/.ssh
cp id_rsa.pub authorized_keys
3) WordPress가 이러한 키에 액세스할 수 있도록 권한을 변경합니다.
cd ~
chmod 755 .ssh
chmod 644 .ssh/*
업로드/업/업/ 플러그인을 수행할 때 SSH2 옵션을 얻을 수 있습니다.업로드/업그레이드/플러그인 실행 시 SSH2 옵션이 표시됩니다.
4. 하기 4에서 할 수 .wp-config.php
WordPress SSH를 사용합니다.
define('FTP_PUBKEY','/home/<user>/.ssh/id_rsa.pub');
define('FTP_PRIKEY','/home/<user>/.ssh/id_rsa');
define('FTP_USER','<user>');
define('FTP_PASS','passphrase');
define('FTP_HOST','domain.com');
않은 경우ssh-kengen
wp-config.php
이것으로 내 문제는 해결되었다. 굳이 안 요.chown
이 다른 볼 수 요.하지만 나는 이 방법이 다른 곳에서 참조되는 것을 보았다.
참고 자료:
- http://wp.tutsplus.com/articles/tips-articles/quick-tip-upgrade-your-wordpress-site-via-ssh/
- http://codex.wordpress.org/Editing_wp-config.php#Enabling_SSH_Upgrade_Access
할 수 .wp-content\plugins
디렉토리로 이동합니다.SFTP 경유로 이 디렉토리에 액세스 할 수 없는 경우는, 막힐 가능성이 있습니다.
명령어 프롬트에 다음 명령을 입력하면 매우 쉽게 얻을 수 있습니다.
sudo chown -R www-data:www-data your_folder_name
또는 다음 코드를 복사하여 wp-config.filename 파일에 붙여넣습니다.
define('FS_METHOD', 'direct');
여기서 "your_folder_name"은 WordPress가 설치된 폴더입니다.
Ubuntu를 사용하는 경우 다음과 같이 Apache 사용자(기본적으로는 www-data)에게 소유권을 부여하는 것이 효과적입니다.
cd your_wordpress_directory
sudo chown -R www-data wp-content
sudo chmod -R 755 wp-content
단말기에서 다음 코드를 실행합니다.
sudo chown -R www-data /var/www
자세한 내용은 Wordpress on Ubuntu install plugins(FTP 액세스 없이 플러그인 설치)를 참조하십시오.
다음 코드를 wp-config에 추가합니다.
define('FS_METHOD', 'direct');
FS_METHOD는 파일 시스템 방식을 강제 적용합니다.direct, ssh2, ftpext 또는 ftpsockets만 사용해야 합니다.일반적으로 업데이트 문제가 발생한 경우에만 이 설정을 변경해야 합니다.변경해도 문제가 해결되지 않으면 다시 변경/제거하십시오.대부분의 경우 자동으로 선택된 방법이 작동하지 않으면 'ftpsockets'로 설정합니다.
(Primary Preferences) "direct"는 PHP 내에서 Direct File I/O 요청을 사용하도록 강제합니다.이러한 요구는, 적절히 설정되어 있지 않은 호스트의 시큐러티 문제를 여는 것과 관련됩니다.
(세컨더리 프리퍼런스) "ssh2"는 SSH PHP Extension을 강제로 사용하는 것입니다(설치되어 있는 경우).
(제3의 프리퍼런스) "ftpext"는 FTP 액세스를 위해 FTP PHP Extension을 강제로 사용하는 것입니다.
(4번째 기본 설정) "ftpsockets"는 FTP 액세스를 위해 PHP 소켓 클래스를 활용합니다.
상세한 것에 대하여는, http://codex.wordpress.org/Editing_wp-config.php#WordPress_Upgrade_Constants 를 참조해 주세요.
WordPress 2.7을 사용하면 zip 파일을 직접 업로드할 수 있습니다(플러그인 페이지 하단에 링크가 있습니다). FTP 액세스가 필요하지 않습니다.이것은 2.7의 신기능으로, 플러그인에 대해서만 동작합니다(아직 테마는 없습니다).
★★★★★★★★★★★★★★★를 추가해 주세요.define('FS_METHOD','direct');
wp-configwp-config.의 경우
오래된 스레드를 부활시키지만 SSH SFTP Updater Support라고 하는 환상적인 새로운 플러그인이 등장하여 편집하지 않고도 SFTP 기능을 추가할 수 있습니다.wp-config.php
또한 Wordpress의 SFTP 구현은 서버에서 활성화되지 않는 다소 불분명한 PHP 모듈에 의존합니다. 이 플러그인은 다른 PHP SFTP 플러그인을 패키징하므로 Apache 측에서 아무것도 구성할 필요가 없습니다.
SFTP 서포트가 기능하는 데 많은 문제가 있었습니다.이 플러그인은 모든 문제를 해결했습니다.그것은 매우 훌륭합니다.
스테레오 인터랙티브로부터의 답변은 모든 옵션을 망라합니다.FTP를 사용하는 다른 방법을 언급하고 싶습니다.FTP 액세스를 허용하지 않는 이유는 보안을 위해서라고 생각합니다.이러한 시큐러티상의 문제에 대처하기 위한1가지 방법은, 127.0.0.1에서만 FTP 서버를 리스닝 하는 것입니다.
이를 통해 WordPress 내부에서 FTP를 사용할 수 있으며 플러그인을 설치할 수 있습니다.이것은 Joomla!와 Drupal과 같은 다른 인기 있는 웹 어플리케이션에도 적용될 수 있다.이것이 당사의 BitNami 어플라이언스와 클라우드 서버에서 수행하는 작업이며, 매우 잘 작동합니다.
SSH SFTP Updater Support 플러그인도 추천합니다.내 문제도 다 해결했어... 특히 관리자를 통해 플러그 인을 삭제하는 건 말이야.일반적인 방법으로 설치하면 다음 번에 WordPress에서 FTP 세부 정보를 묻는 메시지가 나타나면 개인 SSH 키를 복사/붙이거나 PEM 파일을 업로드할 수 있는 추가 필드가 있습니다.
문제는 키를 기억하게 하는 것뿐입니다(두 가지 방법을 모두 시험해 보았습니다).플러그인을 삭제해야 할 때마다 찾아서 입력해야 한다는 생각이 마음에 들지 않습니다.하지만 적어도 지금으로선 확실한 해결책이다.
예, WordPress에 플러그인을 직접 설치합니다.
- 플러그인 폴더를 복사하여 WordPress 플러그인 폴더에 붙여넣습니다.
- admin side(/test/wp-admin)로 이동한 후 플러그인 링크로 이동하여 플러그인 이름을 확인합니다.
- 플러그인을 활성화하여 플러그인을 쉽게 설치합니다.
기타 옵션
- 플러그인 코드의 zip 파일을 만듭니다.
- admin side(/test/wp-admin)로 이동한 후 플러그인 링크에서 add new를 클릭한 후 플러그인 zip 폴더를 브라우즈하고 플러그인을 설치한 후 옵션 activate plugin으로 나오므로 플러그인을 활성화하고 활성화하십시오.
777로 허가해달라는 분들이 많았어요.이틀 전과 같은 문제가 있어서 wp-content에 이것을 추가하는 것이 전부입니다.
define('FS_METHOD', 'direct');
그리고.
플러그인 폴더에 대한 사용 권한을 775로 설정
이것으로 FTP 접속 로그인/패스워드를 요구하는 문제가 해결되었습니다.
전에는 에 .을 수동으로 후 .zip으로 .wp-admin/plugins
설치해야만 했습니다.
SFTP 또는 SSH를 사용하여 WordPress의 플러그인을 자동 업데이트할 수 있지만 ssh2 pecl 확장자가 필요합니다.다음 튜토리얼을 사용하여 방법을 확인할 수 있습니다.
SSH와 함께 SFTP를 사용하고 있습니다(개발 서버와 라이브 서버 모두), WordPress 업로드 기능을 사용하기 위해 노력했습니다(단, 무리하지 않습니다).Toby에 합니다.플러그인을 에 업로드 합니다.wp-content/plugins
디렉토리를 활성화 합니다.
이거 드셔보세요
wp-config.php
define('FS_METHOD', 'direct');
을 설정합니다.wp-content
로부터 「」를 참조해 주세요.777
쓰기 가능.
3) 플러그인을 설치합니다.
Try this wp-content 폴더에 올바른 권한이 부여되었는지 확인합니다.
wp-config를 편집합니다.php 다음 행을 추가합니다.
define('FS_METHOD', 'direct');
"wp-content" 디렉토리를 www-data로 chmod하여 완전한 접근을 가능하게 합니다.
이제 플러그인을 설치해 보십시오.
네, 할 수 있어요.
를 추가해야 합니다.
define('METHOD','direct');
wpconfig에 있습니다.그러나 이 방법은 보안 기능이 있기 때문에 바람직하지 않습니다.
감사해요.
ftp 또는 SFTP 접속 또는 chmod 777을 설정하는 것은 로컬 환경 이외의 방법으로 실시하는 것은 좋지 않습니다.SFTP 방식이라도 오픈하면 불필요한 보안 리스크가 증가합니다.
필요한 것은, 이러한 디렉토리의 소유자에 의한 /wp-content/filength & /wp-content/plugins/ 에의 기입 가능한 허가입니다.(linux ls -la는 소유권을 표시합니다).
실행되는 기본 Apache 사용자는 www-data입니다.
chmod 777을 사용하면 apache/flash 스레드 사용자뿐만 아니라 머신 상의 모든 사용자가 해당 파일을 편집할 수 있습니다.
SFTP 를 아직 사용하지 않는 경우는, 외부 소스로부터 장해가 발생할 가능성이 있는 다른 포인트가 도입됩니다.그러나 목표를 완료하려면 apache/php 프로세스를 실행하는 로컬 사용자의 액세스만 필요합니다.
아무도 이 점을 지적하지 않았기 때문에 온라인에서의 지속적인 WP 보안 문제를 해결하기 위해 이 정보를 제공하려고 합니다.
방법 1: 이 값은 wp-config로 설정할 수 있습니다.php 이 행을 작성해야 합니다.
define('FS_METHOD', 'direct');
주의: 정의('DB_CHARSET', 'utf8mb4') 후에 입력합니다.
- set wp-content permission or permission full75775 full permissions file filezilla file fileively it it it it75 full full775 。디렉토리를 클릭하여 쓰기> 권한 > 읽기/쓰기 체크와 실행 및 서브디렉토리에 대한 Recuse 체크도 합니다.
방법 2:.
또는 이 설정을 할 수도 있습니다.
define("FTP_HOST", "localhost");
define("FTP_USER", "yourftpusername");
define("FTP_PASS", "yourftppassword");
여기 간단한 방법이 있습니다.
다음 명령을 실행합니다.
그러면 Apache용 mod_rewrite 모듈이 활성화됩니다.
$sudo a2enmod rewrite
이 명령어는 폴더의 소유자를 www-data로 변경합니다.
$sudo chown -R www-data [Wordpress Folder Location]
위의 명령을 실행한 후 FTP 없이 원하는 테마를 설치할 수 있습니다.
wp-config에 다음 항목을 추가할 수 있습니다.php
define('METHOD','direct');
여기 그것을 하는 방법을 설명하는 유튜브 영상이 있다.https://youtu.be/pq4QRp4427c
SSH를 사용하여 플러그인을 설치하는 가장 좋은 방법은 WPCLI입니다.
WP CLI 명령을 사용하려면 SSH 액세스가 필수입니다.사용하기 전에 WP CLI가 호스팅 서버 또는 머신에 설치되어 있는지 확인하십시오.
: wp --version
wp cli ]
설치되지 않은 경우 설치 방법: WP-CLI를 설치하기 전에 환경이 최소 요구 사항을 충족하는지 확인하십시오.
UNIX와 같은 환경(OS X, Linux, FreeBSD, Cygwin), Windows 환경에서의 지원은 한정되어 있습니다.PHP 5.4 이상 WordPress 3.7 이상.최신 WordPress 릴리스보다 오래된 버전에서는 기능이 저하될 수 있습니다.
상기 사항이 충족될 경우 참조 URL : WPCLI 절차를 따르십시오.
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
[ download the wpcli phar ]
php wp-cli.phar --info [ check whether the phar file is working ]
chmod +x wp-cli.phar [ change permission ]
sudo mv wp-cli.phar /usr/local/bin/wp [ move to global folder ]
wp --info [ to check the installation ]
이것으로 WP CLI를 설치할 준비가 되었습니다.
이제 다음 명령을 사용하여 WordPress.org에서 사용할 수 있는 플러그인을 설치할 수 있습니다.
wp install plugin plugin-slug
wp delete plugin plugin-slug
wp deactivate plugin plugin-slug
메모: wp cli는 wordpress.org에서 구할 수 있는 플러그인만 설치할 수 있습니다.
언급URL : https://stackoverflow.com/questions/640409/can-i-install-update-wordpress-plugins-without-providing-ftp-access
'sourcecode' 카테고리의 다른 글
JQuery 서버에 JSON 개체를 게시합니다. (0) | 2023.03.15 |
---|---|
REST: 한 번의 요청으로 여러 리소스 업데이트 - 표준입니까, 아니면 피해야 합니까? (0) | 2023.03.15 |
HttpResponseMessage 콘텐츠를 텍스트로 읽는 방법 (0) | 2023.03.15 |
구문 오류: 예기치 않은 토큰 < (0) | 2023.03.15 |
페이지에서 Woocommerce 주문을 쿼리하는 방법 (0) | 2023.03.15 |