Просто понятый это - я забыл давать субдомену его собственный IP-адрес.
Подробнее:
http://nginx.org/en/docs/http/configuring_https_servers.html#sni
Похоже, в ваших файлах неправильный контекст безопасности SELinux. Когда я устанавливаю пакет php-simplepie
(похоже, что он принадлежит EPEL) и проверяю эти файлы, все они имеют тип usr_t
, а не user_home_t
.
Попробуйте исправить защитные метки:
restorecon -r -v /usr/share/php/php-simplepie
Если вы хотите убедиться, что это SElinux, выключите SE linux с помощью setenforce 0 или проверьте журнал audit.log. Я думаю, что это находится в / var / log / audit / audit / log, но я не уверен на 100%. Как только вы точно узнаете, что это SELinu, вы можете снова включить SElinux.
Если это SElinux, то нужно использовать semanage
и установить политику selinux так, чтобы все каталоги, в которых находится ваш PHP-контент это httpd_sys_rw_content_t
semanage fcontext -a -t httpd_sys_rw_content_t </path/to/php/dir>
Затем примените эту политику с помощью restorecon
к каталогам и их дочерним файлам / каталогам:
restorecon -R </path/to/php/dir>
Если semanage / restorecon
не установлены установите пакет policycoreutils-python
.
Кстати, если вы хотите просмотреть контексты файлов по умолчанию в политике, вы можете сделать это с помощью:
semanage fcontext -l
Однако это может быть не SELinux. Я считаю, что стандартный apache в большинстве дистрибутивов RedHat не будет следовать символическим ссылкам (хотя, я думаю, у вас была ошибка, в которой говорилось что-то об отказе от использования символических ссылок, когда это было так), поэтому вам может потребоваться добавить:
Options FollowSymLinks
To конфигурацию apache и перезапустите apache.
Конечно, это может быть как selinux, так и не следующие символические ссылки.
Čia yra nedidelis apvalkalo scenarijus, kurį sukūriau mūsų kūrėjams. Tokiu būdu kiekvieną kartą, kai jie išleidžia „WordPress“, nereikia prisiminti, ką daryti. Jūsų failų struktūra beveik neabejotinai šiek tiek skiriasi, todėl reikės šiek tiek pakeisti. Prašome pasiūlyti patobulinimų. „SELinux“ nėra mano specializacija, bet aš ją mokausi.
#!/bin/sh
# License: Public Domain
# satisfies SELinux context requirements for a WordPress site
# To operate properly on CentOS, etc.
#Figure out what directory to apply this to and strip any trailing /
if [ -d $1 ]; then
site=${1%/}
else
site=`pwd`
fi
#Check to make sure the setting of $site is sane and fail if not
if [ ! -d $site/httpdocs/wp-content ]; then
echo "ERROR: This does not appear to be an appropriate directory."
echo ${site}
echo "Please specify directory for the site like /var/www/html/myssite as the only argument"
exit 1
fi
#For visual appeal mostly
content=$site/httpdocs/wp-content
#Setup the contexts
chcon -R -v -t public_content_rw_t $content/plugins/ $content/themes/ $content/uploads/ $site/logs/
semanage fcontext -a -t httpd_sys_rw_content_t $site/httpdocs/
semanage fcontext -a -t httpd_sys_rw_content_t $site/httpsdocs/
semanage fcontext -a -t httpd_sys_rw_content_t $site/logs/
#Apply the contexts
restorecon -R $site/logs/
restorecon -R $site/httpdocs/
restorecon -R $site/httpsdocs/