ЛАМПА Apache permisson выходит на сервере Ubuntu

Решенный, перешел по этой ссылке https://bugs.launchpad.net/ubuntu / + source/postgresql-8.3 / + ответ ошибки/235379 № 15, и это запустилось

4
задан 20 January 2012 в 03:47
4 ответа

Это расположение папки немного сбивает с толку. Ваше значение по умолчанию vhost директива указывает /home/server/public_html/ как DocumentRoot, но затем Вы указываете подпапку его как корень Вашего приложения. Это не оптимальная конфигурация. Попытайтесь переместить сайт из public_html в его собственную папку (/home/server/project или somesuch) и установка DocumentRoot соответственно.

После того как это перемещено, Вам не нужно 777 полномочия сделать это доступным, хотя это действительно должно быть читаемо www-data. Попытка:

chmod -R 644 /home/server/project   
find /home/server/project -type d -exec chmod 755 {} \+

Это сделает все читаемым миром, и все проходимые папки (установка выполнения обдумала папки, делает это).

Еще одна вещь: ServerName не использует http:// префикс. Необходимо удалить это из конфигурации и оставить просто доменное имя.

Перезапустите своего апача после того, как это изменяется, и необходимо смочь добраться до сайта с данным именем хоста.

2
ответ дан 3 December 2019 в 04:03

Можно дать Apache право получить доступ к файлам, не устанавливая их на world-can-do-everything (rwxrwxrwx или 777), необходимо было бы только дать ему разрешение считать файлы так, чтобы исполняемый файл PHP мог считать их. Вы, возможно, должны дать права выполнения также, если PHP проверяет на это. Лучший путь состоял бы в том, чтобы изменить владение с chown www-data:www-data <file> затем можно дать Apache полные права и никакие права кому-либо еще (кроме корня) с chmod 700 (или chmod u+rwx <file>; chmod go-rwx <file> если Вы предпочитаете использовать мнемонические коды, а не основанные на комбинации двоичных разрядов).

Если у Вас есть другие сайты, работающие от той же установки Apache (и так также работающий как www-data) и Вы хотите сохранить их, разделил s, один сайт в некоторой степени защищен другими, затем изучите использование suPHP (в соответствии с этим пакетом в Ubuntu). Это менее эффективно, чем стандарт трясины mod_php (хотя не очень, если Вы не находитесь на сильно ограниченных аппаратных средствах), но дает Вам что дополнительный слой защиты между пользователями/сайтами, мешая им (случайно или иначе) влиять друг на друга или читать материал друг друга. Каждый скрипт запущен процессом, действующим как пользователь, который владеет им, таким образом, php файл, принадлежавший user1, выполняется как user1, и ни у какого другого пользователя (даже www-данные или безотносительно скриптов, обычно запускаемых как), не должно быть доступа к нему. Можно встретиться с другими ошибками полномочий от suphp, пока Вы не имеете вещи право набора, поскольку это принимает значение по умолчанию к настаиванию определенная передача проверок безопасности (как каталоги и сценарии, не являющиеся записываемым миром) прежде, чем запустить любой скрипт.

ре PS: require(/home/server/public_html/dirty-briefs/site/protected/config/main.php): failed - кофе запятнанные информационные записки встречи или что-то еще?!

1
ответ дан 3 December 2019 в 04:03

Вам, вероятно, нужен доступ на выполнение на /home/server таким образом, пользователь Apache может пересечь в нем для чтения public_html папка (который должен быть другим - читаемый).

# If not already drwx--x--x...
chmod o+x /home/server
0
ответ дан 3 December 2019 в 04:03

Это - вероятно, seLinux проблема.

Править:

Чтобы быть уверенными, можно установить seLinux на разрешающий режим и попробовать еще раз. Если бы Вы работали над Redhat, то я рекомендовал бы использовать system-config-selinux, но я не знаю инструмент для этого в Ubuntu

-1
ответ дан 3 December 2019 в 04:03

Теги

Похожие вопросы