Rumah > Soal Jawab > teks badan
P粉3767388752023-08-28 09:42:11
Langkah 1: Kenal pasti Pengguna PHP
Buat fail PHP dengan kandungan berikut:
<?php echo `whoami`; ?>
Muat naik ke pelayan web anda. Output sepatutnya menyerupai yang berikut:
www-data
Jadi, pengguna PHP adalah www-data
.
Langkah 2: Tentukan Pemilik Direktori
Seterusnya, semak butiran direktori web melalui baris arahan:
ls -dl /var/www/example.com/public_html/example-folder
Hasilnya sepatutnya kelihatan seperti berikut:
drwxrwxr-x 2 exampleuser1 exampleuser2 4096 Mar 29 16:34 example-folder
Oleh itu, pemilik direktori ini ialah exampleuser1
.
Langkah 3: Tukar Pemilik Direktori kepada Pengguna PHP
Kemudian, tukar pemilik direktori web kepada pengguna PHP:
sudo chown -R www-data /var/www/example.com/public_html/example-folder
Sahkan bahawa pemilik direktori web telah berubah:
ls -dl /var/www/example.com/public_html/example-folder
Hasilnya sepatutnya kelihatan seperti berikut:
drwxrwxr-x 2 www-data exampleuser2 4096 Mar 29 16:34 example-folder
Pada ketika ini, pemilik example-folder
telah berjaya ditukar kepada pengguna PHP: example-folder
的所有者已成功更改为 PHP 用户:www-data
.
Selesai! PHP kini sepatutnya boleh menulis ke direktori.
P粉3524080382023-08-28 09:07:16
Cara mudah ialah membenarkan PHP mencipta direktori itu sendiri terlebih dahulu.
<?php $dir = 'myDir'; // create new directory with 744 permissions if it does not exist yet // owner will be the user/group the PHP script is run under if ( !file_exists($dir) ) { mkdir ($dir, 0744); } file_put_contents ($dir.'/test.txt', 'Hello File');
Ini menjimatkan masalah anda dengan kebenaran.