Linux Wordpress는 wp-config 파일에 쓸 수 없습니다.

Linux Wordpress는 wp-config 파일에 쓸 수 없습니다.

내 컴퓨터에 최신 버전의 Apache2/PHP/MYSQL이 설치되어 있습니다.

해당 디렉터리 내에 모든 WordPress 파일이 포함된 디렉터리를 /src/www/htdocs만들었습니다 .wordpress

wp-config그런 다음 웹 인터페이스를 통해 파일을 생성 하려고 하면 다음 오류가 발생합니다.

Sorry, but I can't write the `wp-config.php' file.

이 명령을 사용하여 그룹을 변경해 보았습니다./src/www/htdocs/wordpress

chown -R root:root /srv/www/htdocs/wordpress

하지만 작동하지 않습니다. 몇 가지 조사를 한 후 많은 사람들이 그룹을 다음으로 변경하라고 말하는 것을 보았지만 이 명령이 사용되는 것을 www-data보지 못했습니다 .www-data

cut -d: -f1 /etc/group

내가 뭘 잘못하고 있는지 아는 사람 있나요?

답변1

폴더 소유자를 루트에서 현재 사용자로 변경하면 됩니다.

sudo chown -R yourcurrentuser:currentgroup /srv/www/htdocs/wordpress

답변2

wp-config.php아직 존재하지 않으면 다음을 사용하십시오 .

cp wp-config-sample.php wp-config.php

Apache에서 사용하는 그룹은 Apache 구성 파일에 있습니다. OS X에서 찾는 방법은 다음과 같습니다. 나에게 있어서 그룹은 다음과 같다 _www:

grep ^Group /etc/apache2/httpd.conf

Unix/Linux는 3개의 권한 그룹( user, group, ) 을 사용합니다 others. 나는 당신이 user파일의 소유자를 유지하고 싶다고 가정합니다. 가장 간단한 방법은 권한을 부여 group하고 쓰는 것 입니다 others. 이렇게 하려면 다음을 사용하세요.

 chmod go+w wp-config.php

답변3

먼저, Apache 데몬이 현재 어떤 그룹을 사용하고 있는지 확인하세요.

$ cat /etc/apache2/apache2.conf | grep ^Group -B 2
# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}

좋아요 이는 그룹이 APACHE_RUN_GROUP변수에 저장됨을 의미합니다.

$ echo ${APACHE_RUN_GROUP}

이 변수는 현재 환경에 설정되어 있지 않습니다. 왜? 나는 정말로 모른다. 그러나 Apache 구성 파일의 주석이 이러한 변수가 정의된 파일을 가리키기 때문에 중요하지 않습니다.

$ cat /etc/apache2/envvars | grep GROUP
export APACHE_RUN_GROUP=www-data

그래서 제 경우에는 Apache가 실행되는 그룹은 www-data. 이제 이 정보를 사용하여 WordPress 디렉터리 그룹을 변경할 수 있습니다. 귀하의 경우:

sudo chgrp -R www-data /src/www/htdocs

-R플래그는 재귀적으로 만듭니다. 바라보다!

답변4

nginx 사용자의 경우 기본 사용자는 이므로 이 사용자에게 쓰기 권한을 부여 www-data해야 합니다 .www-data

chown -R www-data wordpress

관련 정보