2014-10-07 3 views
0

Как мне следует писать файлы, которые не должны быть доступны для публики? Во-первых, как я могу писать в файл за пределами корневой папки CI? Во-вторых, чтобы записать файл, мне нужно установить разрешение на доступ к 777, которое затем станет доступно для публики. Как мне подойти к этому?пишите файлы/файлы cookie с codeigniter

+0

Прежде всего, вам необходимо получить разрешения на установление владельца файлов вашего сервера. Взгляните сюда: http://serverfault.com/questions/357108/what-permissions-should-my-website-files-folders-have-on-a-linux-webserver и использовать fopen, fwrite и fclose normaly. – giordanolima

ответ

0

CI File Helper «поможет» вы это делаете:

$this->load->helper('file'); 
write_file('./path/to/file.php', $data); 

Путь к файлу может быть относительным или абсолютным путем, так что вы можете записать этот файл в любом месте в системе (даже выше CI корневой папки - до тех пор, пока у вас есть права на запись в каталог

Например:.

// CI Root folder is at /var/www/my_ci_project 
// Directory to write to is at /var/www/tmp_files 
$this->load->helper('file'); 
write_file('/var/www/tmp_files/file.php', $data); 

Что касается разрешений, нужно просто файл, чтобы быть г roup, доступный для записи пользователем веб-сервера:

// Everything for owner, read and execute for owner's group 
chmod("/var/www/tmp_files/file.php", 0770);