Saya perlu melakukan operasi yang agak aneh.
Pertama, saya menjalankan di Debian, apache2 (yang 'berjalan' sebagai data pengguna www)
Jadi, saya punya file teks sederhana dengan .txt ot .ini, atau ekstensi apa pun, tidak masalah.
File-file ini terletak di subfolder dengan struktur seperti ini:
www.example.com/folder1/car/foobar.txt www.example.com/folder1/cycle/foobar.txt www.example.com/folder1/fish/foobar.txt www.example.com/folder1/fruit/foobar .txt
oleh karena itu, nama file selalu sama, juga untuk 'hierarki', cukup ganti nama folder: /folder-name-static/folder-name-dinamyc/file-name-static.txt
Yang harus saya lakukan adalah (saya pikir) relatif sederhana: Saya harus dapat membaca file itu dengan program di server (python, php misalnya), tetapi jika saya mencoba untuk mengambil konten file dengan broswer (menggali url www. example.com/folder1/car/foobar.txt, atau via cUrl, dll.) Saya harus mendapatkan kesalahan terlarang, atau apa pun, tetapi tidak mengakses file .
Akan lebih baik bahwa bahkan mengakses file-file itu melalui FTP adalah 'tersembunyi', atau lagi pula tidak dapat diunduh (setidaknya yang saya gunakan dengan ftp root dan data pengguna)
Bagaimana saya bisa melakukannya?
Saya menemukan ini online, dimasukkan ke dalam file .htaccess:
<Files File.txt>
Order allow, deny
Deny from all
</ Files>
Tampaknya berfungsi, tetapi hanya jika file ada di root web (www.example.com / myfile.txt), dan tidak dalam subfolder. Selain itu, folder di tingkat kedua (www.example.com/folder1/ fruit /foobar.txt) akan dibuat secara dinamis .. Saya ingin menghindari keharusan mengubah file .htaccess dari waktu ke waktu.
Dimungkinkan untuk membuat aturan, sesuatu seperti itu, yang berlaku untuk semua file dengan nama yang diberikan, yang ada di * www.example.com / folder-name-static / * folder-name-dinamyc / *** file-name -static.txt *, di mana bagian-bagian itu selalu sama , hanya ** yang satu perubahan ?
EDIT :
Seperti yang dikatakan Dave Drager, saya bisa mengamplifikasi ini dengan menyimpan file-file itu di luar direktori yang dapat diakses web. Tetapi direktori tersebut akan berisi file orang lain juga, gambar, dan hal-hal yang digunakan oleh pengguna saya, jadi saya hanya mencoba untuk tidak memiliki sistem folder duplikat, seperti:
/var/www/vhosts/example.com/httpdocs/folder1/car/[other folders and files here]
/var/www/vhosts/example.com/httpdocs/folder1/cycle/[other folders and files here]
/var/www/vhosts/example.com/httpdocs/folder1/fish/[other folders and files here]
//and, then for the 'secrets' files:
/folder1/data/car/foobar.txt
/folder1/data/cycle/foobar.txt
/folder1/data/fish/foobar.txt