Как решить проблему с разрешениями в apache. Первоначальная задача, над которой я пытаюсь работать, - это загрузить плагин mura во временную директорию ColdFusion9. Однако с тех пор я обнаружил, что эта проблема не связана с ColdFusion.
ColdFusion работает от имени пользователя apache:
# ps aux | grep coldfusion
apache 31016 0.0 0.0 2104 664 ? S Oct27 0:00 /opt/coldfusion9 ...
apache 31017 0.7 24.5 933260 513976 ? Sl Oct27 18:02 /opt/coldfusion9 ...
Apache имеет доступ к каталогу, в который я пытаюсь писать:
# namei -m /opt/coldfusion9/runtime/servers/coldfusion/SERVER-INF/temp/wwwroot-tmp/
f: /opt/coldfusion9/runtime/servers/coldfusion/SERVER-INF/temp/wwwroot-tmp/
drwxr-xr-x /
drwxr-xr-x opt
drwxrwxrwx coldfusion9
drwxrwxr-x runtime
drwxrwxr-x servers
drwxr-xr-x coldfusion
drwxr-xr-x SERVER-INF
drwxr-xr-x temp
drwxr-xr-x wwwroot-tmp
# ls -la /opt/coldfusion9/runtime/servers/coldfusion/SERVER-INF/temp/wwwroot-tmp/
total 8
drwxr-xr-x 2 apache apache 4096 Oct 28 15:46 .
drwxr-xr-x 3 apache root 4096 Oct 27 21:33 ..
Каталогу не назначены расширенные атрибуты:
#lsattr /opt/coldfusion9/runtime/servers/coldfusion/SERVER-INF/temp/wwwroot-tmp/
------------- /opt/coldfusion9/runtime/servers/coldfusion/SERVER-INF/temp/wwwroot-tmp/afile
Я изменил оболочку (временно) пользователя apache на bash, вошел в оболочку и смог писать в каталог.
Selinux отключен.
fixweb был запущен.
Я создал два сценария, tmp.cfm и tmp.php, которые просто пытались записать файл в целевой каталог, просматривали сценарии tmp в браузере, и оба не могли писать в каталог.
Я также создал псевдоним для каталога в apache:
Alias /atemp /target-dir
<Location /atemp>
Order allow,deny
Allow from all
</Location>
Перезапустил apache и все еще не смог получить доступ к этому каталогу.
Я видел аналогичную проблему с разрешением при работе с Wordpress.
Я подозреваю, что это как-то связано с моим двоичным файлом apache, но я не получил ответа от поставщиков этого двоичного файла, поэтому я надеялся получить некоторую помощь от более широкой аудитории.
Редактировать: Я был бы открыт для других возможных проблем, которые могут вызвать то, что я не рассматривал.
Оказывается, это все-таки проблема с Adobe ColdFusion 9.