php mkdir의 권한 부족에 대한 해결 방법: 1. 시스템 기본 권한을 777로 변경하고 mkdir에 대해 더 큰 권한을 지정합니다. 2. 시스템 기본 권한보다 더 큰 권한을 갖도록 chmod 기능을 설정합니다. 3. 시스템의 mkdir 명령을 설정합니다. 기본값보다 큰 권한입니다.
추천: "PHP Video Tutorial"
php
의 mkdir() 함수에 대한 권한 문제 문제 설명:
다음 PHP 코드를 사용하여 디렉토리를 생성하면 예상되는 권한은 다음과 같습니다. 디렉토리는 0777 이고 실제 결과는 0755
mkdir('./aa/',0777);
분석 및 테스트 결과:
1입니다. mkdir() 함수에 의해 지정된 디렉토리 권한은 시스템 umask에 의해 설정된 기본 권한보다 작거나 같을 수 있습니다.
예를 들어 Linux의 기본 umask는 일반적으로 0022입니다. 즉, 디렉터리를 생성하는 기본 권한은 0755이므로 이때 php mkdir('./aa/',0777)은 해당 디렉터리의 권한을 가져옵니다. be 0755.
xw@xw-X201:~/Desktop/dd/aa$ umask 0022 xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw/',0777);" xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw1/',0755);" xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw2/',0747);" xw@xw-X201:~/Desktop/dd/aa$ ll 总用量 20 drwxrwxrwx 5 xw xw 4096 2012-06-01 11:58 ./ drwxr-xr-x 6 xw xw 4096 2012-06-01 11:26 ../ drwxr-xr-x 2 xw xw 4096 2012-06-01 11:57 xw/ drwxr-xr-x 2 xw xw 4096 2012-06-01 11:58 xw1/ drwxr--r-x 2 xw xw 4096 2012-06-01 11:58 xw2/
시스템 기본 권한을 777로 변경하면 mkdir()은 더 큰 권한을 지정할 수 있습니다
xw@xw-X201:~/Desktop/dd/aa$ umask 000 xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw2/',0777);" xw@xw-X201:~/Desktop/dd/aa$ ll 总用量 12 drwxrwxrwx 3 xw xw 4096 2012-06-01 12:08 ./ drwxr-xr-x 6 xw xw 4096 2012-06-01 11:26 ../ drwxrwxrwx 2 xw xw 4096 2012-06-01 12:08 xw2/
2.chmod() 함수는 시스템 umask의 영향을 받지 않으며 시스템 기본 권한보다 더 큰 권한을 설정할 수 있습니다.
xw@xw-X201:~/Desktop/dd/aa$ umask 0022 xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw1/',0777);" xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw2/');" xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw3/');chmod('./xw3/',0777);" xw@xw-X201:~/Desktop/dd/aa$ ll 总用量 20 drwxrwxrwx 5 xw xw 4096 2012-06-01 12:12 ./ drwxr-xr-x 6 xw xw 4096 2012-06-01 11:26 ../ drwxr-xr-x 2 xw xw 4096 2012-06-01 12:11 xw1/ drwxr-xr-x 2 xw xw 4096 2012-06-01 12:11 xw2/ drwxrwxrwx 2 xw xw 4096 2012-06-01 12:12 xw3/
3. 시스템의 mkdir 명령은 기본값보다 더 큰 권한을 설정할 수 있습니다.
xw@xw-X201:~/Desktop/dd/aa$ umask 0022 xw@xw-X201:~/Desktop/dd/aa$ mkdir -m0777 xw xw@xw-X201:~/Desktop/dd/aa$ ll 总用量 12 drwxrwxrwx 3 xw xw 4096 2012-06-01 12:18 ./ drwxr-xr-x 6 xw xw 4096 2012-06-01 11:26 ../ drwxrwxrwx 2 xw xw 4096 2012-06-01 12:18 xw/
요약:
php가 읽기 및 쓰기 권한이 있는 디렉토리를 생성하려는 경우 시스템 umask
mkdir('./xw/'); chmod('./xw/',0777);
위 내용은 php mkdir에 권한이 충분하지 않은 경우 수행할 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!