Pindah Server, Safe Mode, dan Kepemilikan File ...
Saya baru saja pindah beberapa aplikasi web yang saya telah menulis ke dedicated server baru dengan UKFast . Server baru saya dengan saya sebelumnya web host yang mengerikan , setup pada cara yang jauh kurang aman ( PHP Safe Mode "> safe_mode off misalnya) dari yang baru jadi saya menemukan bahwa beberapa skrip tidak bekerja.
Salah satu gangguan utama adalah upload file php yang digunakan untuk menempatkan gambar properti ke situs. Dengan pelaporan kesalahan beralih ke Kesalahan maksimum dan Tampilan diaktifkan dalam file php.ini saya bisa melihat daftar lengkap dari kesalahan. Salah satu keluhan utama menyatakan sesuatu di sepanjang baris ...
PHP Peringatan:  Unknown (): SAFE MODE Restriction di effect. Script yang uid adalah 1 tidak diizinkan untuk mengakses / path / ke / script.php dimiliki oleh uid 26658 di Unknown on line 0;
Banyak dari direktori dan file gambar diciptakan oleh situs tua sehingga kepemilikan file merupakan masalah utama. Dukungan teknis menyarankan mematikan mode aman sebagai perbaikan jangka pendek dan kemudian bekerja di sekitar dalam jangka panjang. Saya tidak cukup puas dengan solusi ini begitu menghabiskan waktu untuk berpikir melalui masalah.
Saya tahu bahwa Anda bisa mengubah kepemilikan dari sebuah file dengan log in sebagai root melalui SSH dan menjalankan perintah berikut ...
<> chown user: group nama file (lihat juga chgrp )
(Anda dapat menggunakan-R beralih ke chown semua file dalam situs Anda)
Saya mulai dengan pengaturan kepemilikan file dan kelompok file pada situs saya untuk 26.658 (jika kita menggunakan contoh di atas!). Ini tampaknya untuk menyortir masalah sampai yang saya mencoba untuk FTP file ke dan dari situs, sehingga ijin ditolak dan / atau file tidak ditemukan kesalahan.
Jadi setelah bermain-main dengan beberapa uid, aku punya secangkir teh dan berpikir melalui masalah. Bagi saya untuk meng-upload file melalui FTP maka pemilik file harus sesuai dengan FTP username. Jadi saya mengatur pemilik file sebagai username saya yang digunakan untuk login melalui FTP. Kedua, webserver akan ingin mengakses file sehingga saya mengatur kepemilikan kelompok sebagai ' apache '.
Ini tidak cukup bekerja, namun pengaturan kepemilikan direktori / tmp tidak ada (tidak ada chown / tmp) tampaknya telah tetap masalah:)
















































