/ var / www 및 wordpress에 대한 올바른 권한 그리고 dyndns를 사용하여

LAMP 서버를 설정했으며 네트워크를 통해 (IP 주소를 통해) 웹 브라우저에서 그리고 dyndns를 사용하여 외부에서 SSH를 통해 “작동”페이지에 액세스 할 수 있습니다.

/ var / www / wordpress1 / var / www / wordpress2 등의 하위 디렉토리에있는 일부 WordPress 프로젝트가 있습니다. WP를 설정하기 위해 브라우저에서이 하위 디렉토리에 액세스 할 수 없습니다. 브라우저의 컨텐츠. 브라우저에 403 Forbidden 오류가 발생합니다.

이것이 권한 문제라고 가정합니다. 다음에 대한 권한에 대한 적절한 설정을 알려주십시오.

  1. 개발자와 저에게 읽기 / 쓰기를 허용하십시오.
  2. WP 설정 및 작업 수행
  3. 방문자가 웹을 통해 사이트에 액세스 할 수 있도록합니다.

또한 하위 폴더가 실제로 다른 내부 hdd의 폴더에 대한 simlinks라고 언급해야합니다.

total 12
drwxr-xr-x  2 root root 4096 2012-07-12 10:55 .
drwxr-xr-x 13 root root 4096 2012-07-11 20:02 ..
lrwxrwxrwx  1 root root   43 2012-07-11 20:45 admin_media ->     /root/django_src/django/contrib/admin/media
-rw-r--r--  1 root root  177 2012-07-11 17:50 index.html
lrwxrwxrwx  1 root root   14 2012-07-11 20:42 media -> /hdd/web/media
lrwxrwxrwx  1 root root   18 2012-07-12 10:55 wordpress -> /hdd/web/wordpress

다음은 사용 결과입니다 chown -R www-data:www-data /var/www

total 12
drwxr-xr-x  2 www-data www-data 4096 2012-07-12 10:55 .
drwxr-xr-x 13 root     root     4096 2012-07-11 20:02 ..
lrwxrwxrwx  1 www-data www-data   43 2012-07-11 20:45 admin_media -> /root/django_src/django/contrib/admin/media
-rw-r--r--  1 www-data www-data  177 2012-07-11 17:50 index.html
lrwxrwxrwx  1 www-data www-data   14 2012-07-11 20:42 media -> /hdd/web/media
lrwxrwxrwx  1 www-data www-data   18 2012-07-12 10:55 wordpress -> /hdd/web/wordpress

여전히 브라우저를 통해 액세스 할 수 없습니다.



답변

먼저, 사용자 이름이 www-data그룹에 포함되어 있는지 확인해야합니다 . 그렇지 않은 경우 사용자 이름을 www-data그룹으로 추가 할 수 있습니다

sudo adduser $USER www-data

그런 다음 / var / www의 소유권을 사용자 이름으로 변경해야합니다

sudo chown $USER:www-data -R /var/www

다음 단계, 일반적인 방법으로 , 보안상의 이유로 권한을 777로 변경하지 말고 권한을 755 (rwxr-xr-x)로 변경해야합니다.

sudo chmod u=rwX,g=srX,o=rX -R /var/www

워드 프레스 또는 라 라벨 또는 다른 프레임 워크에 대한 특정 권한 과 관련 하여 문서를 각각 읽을 수 있습니다.

그것이 도움이되기를 바랍니다 …


답변

분명히 이것은 Ubuntu 서버 안내서에서 권장되는 방법입니다.

11 장. 웹 서버.

1.4. 쓰기 권한 공유

둘 이상의 사용자가 동일한 디렉토리에 쓸 수 있으려면 공통된 그룹에 쓰기 권한을 부여해야합니다. 다음 예제는 “webmasters”그룹에 / var / www / html에 공유 쓰기 권한을 부여합니다.

www-data를 사용 합니다 . “웹 마스터”를 그룹으로 바꾸면됩니다. 물론 그룹에 사용자를 추가해야합니다.

sudo chgrp -R webmasters /var/www/html
sudo find /var/www/html -type d -exec chmod g=rwxs "{}" \;
sudo find /var/www/html -type f -exec chmod g=rws "{}" \;

방금 Mac 데스크탑에서 Dreamweaver로 테스트하고 파일을 추가하고 파일을 추가 한 파일 등을 교체하고 한 가지 예외를 제외하고 올바른 권한을 유지합니다. 로컬 사용자는 www-data와 함께 새 파일의 소유자가되지만 루트에서 만든 파일은 html 디렉토리는 소유권을 루트로 유지하지만 로컬 사용자가 편집 할 수 있습니다.

$ls -l
$-rw-rw-r-- 1 localUser www-data 11505 May 28 09:56 index2.html
$-rw-rwSr-- 1 root  www-data 11535 May 28 09:58 index.html

이것이 상황을 정리하고 지친 것을 돕기를 바랍니다. 내가 항상이 상황에 지친 것을 알고 있기 때문에 지금은 분명합니다.

아, 나는 ftp에 키를 사용하여 sftp를 사용하여 ftp에 액세스 할 것을 강력히 권장하며, 나를 위해 잘 작동하며 PureFTP 또는 파일을 웹 사이트에 전달하는 다른 안전하지 않은 방법이 필요하지 않습니다. Digital Ocean 사이트에는 ssh 키로 서버를 보호하는 방법에 대한 몇 가지 자습서가 있습니다.

Linux 서버에서 SSH 키 기반 인증을 구성하는 방법


답변

Apache에 /hdd/web/media및에 대한 실행 권한이 있는지 확인하십시오 /hdd/web/wordpress.

운영:

chmod o+x /root /root/site /root/site/about

또한 파일 시스템의 디렉토리에 액세스 할 수 있도록 Apache를 구성해야합니다. 이것은 아파치 구성 파일 (httpd.conf)에 지시문을 삽입하여 시스템 관리자가 수행해야합니다.

실제 디렉토리는 웹 루트 내에 있으므로 액세스 가능해야하지만 FollowSymLinks가 디렉토리에 대해 활성화되지 않았을 수 있습니다. 또한 지시문에 추가해야합니다.

http://httpd.apache.org/docs/2.0/mod/core.html#directory를 참조하십시오 .


답변

우분투 설치 설명서를 읽고 ..

chown -R www-data /usr/share/wordpress

파일 압축을 풀지 않고이 방법으로 설치하는 것이 더 쉬울 수도 있습니다. /var/www

https://help.ubuntu.com/community/WordPress

어쨌든 워드 프레스가 실행되는 방법은 무엇입니까? 당신이 그렇게하고 싶다면 .. @metamorph로 do를 보여주고 다음 httpd.conf과 같이 apache2에 대한 허가를 주십시오.

<VirtualHost *:80>
        ServerName site
        ServerName site.domain
        DocumentRoot /srv/www/wordpress.site

        DirectoryIndex index.php

</VirtualHost>

다음 default-server.conf.

<Directory "/srv/www/wordpress.site">
        Options None
        AllowOverride None
        Order allow,deny
        Allow from all
</Directory>

어쩌면 https://help.ubuntu.com/community/WordPress를 단계별로 수행하는 것이 가장 좋습니다