1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

1.4.9 Неправильно работает хостинг.

Тема в разделе "Баги XenForo", создана пользователем AfterWork, 25.07.2015.

Загрузка
  1. AfterWork

    AfterWork Местный

    Регистрация:
    14.04.15
    Сообщения:
    49
    Симпатии:
    0
    Версия XF:
    1.5.10
    То что проблема где-то на стыке php-fpm и nginx, я уже интуитивно понимаю. Вопрос остался только где именно.
    Всё установлено на локальной машине для целей разработки. Первое время всё работало нормально но дня 3 назад я что-то сломал. :) Восстановить последовательность собственных действий не представляется возможным просто потому что я как минимум уже 7-8 раз сносил и устанавливал пхп нгинкс и марию.
    Конфигурация среды:
    centos 7 64 bit

    # rpm -qa | grep -i php
    php55w-opcache-5.5.27-1.w7.x86_64
    php55w-pdo-5.5.27-1.w7.x86_64
    php55w-mbstring-5.5.27-1.w7.x86_64
    php55w-mysql-5.5.27-1.w7.x86_64
    php55w-5.5.27-1.w7.x86_64
    php55w-process-5.5.27-1.w7.x86_64
    php55w-gd-5.5.27-1.w7.x86_64
    php55w-common-5.5.27-1.w7.x86_64
    php55w-xml-5.5.27-1.w7.x86_64
    php55w-pear-1.9.4-7.w7.noarch
    php55w-cli-5.5.27-1.w7.x86_64
    php55w-fpm-5.5.27-1.w7.x86_64

    # rpm -qa | grep -i nginx
    nginx-1.8.0-1.el7.ngx.x86_64
    nginx-release-centos-7-0.el7.ngx.noarch

    # rpm -qa | grep -i maria
    MariaDB-server-10.0.20-1.el7.centos.x86_64
    MariaDB-shared-10.0.20-1.el7.centos.x86_64
    MariaDB-client-10.0.20-1.el7.centos.x86_64
    MariaDB-common-10.0.20-1.el7.centos.x86_64

    Есть хостинг на котором развернут форум и там все нормально работает, так что на движек плагины и настройки форума грешить не вижу нужды. Правда там центос 6.x но не думаю что это так важно.

    Собственно симптомы:
    1. Берется бакап с хостинга, и разворачивается на локальной машине. Результат:
    Панель управления - www.myforum.ru Мой форум.
    Server Error
    fopen(/usr/share/nginx/html/internal_data/sitemaps/sitemap-1437818633-1.xml): failed to open stream: Permission denied
    1. XenForo_Application::handlePhpError()
    2. fopen() in XenForo/Deferred/Sitemap.php at line 210
    3. XenForo_Deferred_Sitemap->_openFile() in XenForo/Deferred/Sitemap.php at line 230
    4. XenForo_Deferred_Sitemap->_writeSitemapString() in XenForo/Deferred/Sitemap.php at line 202
    5. XenForo_Deferred_Sitemap->_writeResult() in XenForo/Deferred/Sitemap.php at line 165
    6. XenForo_Deferred_Sitemap->_buildSitemap() in XenForo/Deferred/Sitemap.php at line 90
    7. XenForo_Deferred_Sitemap->execute() in XenForo/Model/Deferred.php at line 294
    8. XenForo_Model_Deferred->runDeferred() in XenForo/Model/Deferred.php at line 428
    9. XenForo_Model_Deferred->_runInternal() in XenForo/Model/Deferred.php at line 373
    10. XenForo_Model_Deferred->run() in XenForo/ControllerAdmin/Tools.php at line 159
    11. XenForo_ControllerAdmin_Tools->actionRunDeferred() in XenForo/FrontController.php at line 347
    12. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 134
    13. XenForo_FrontController->run() in /usr/share/nginx/html/admin.php at line 13
    Права на каталоги data и internal_data установлены правильно.
    chmod -R 0777 /usr/share/nginx/html/internal_data
    chmod -R 0777 /usr/share/nginx/html/data
    и даже chmod -R 0777 /usr/share/nginx/html :)

    Такая беда возникает как при версии ксены 1.4.7 так и при версии 1.4.9

    2. Еще интереснее когда пробую ставить просто чистую ксену с нуля.
    Заливаю инсталяшку в /usr/share/nginx/html, расставляю права на папки, очищаю базу drop/create database,
    рестартую последовательно сервисы mysql/php-fpm/nginx (в разном порядке пробовал это делать), пишу в браузере http://127.0.0.1/install и получаю вот это:

    XenForo 1.4.9 - Errors
    The following errors occurred while verifying that your server can run XenForo:

    • The directory /usr/share/nginx/html/data must be writable. Please change the permissions on this directory to be world writable (chmod 0777). If the directory does not exist, please create it.
    • The directory /usr/share/nginx/html/internal_data must be writable. Please change the permissions on this directory to be world writable (chmod 0777). If the directory does not exist, please create it.
    Please correct these errors and try again.

    Настраивал хостинг я по вот этому ману: http://www.xf-russia.ru/forum/threads/centos-6-5-kak-postavit-nginx-php-fpm-opcache.9035/

    Вот этот файлик
    echo '<?php echo phpinfo(); ?>' > /usr/share/nginx/html/phpinfo.php
    Выдает как и положено портянку страниц на 5 с подробным описание того что там и как здорово настроено в пхп.

    Тем не менее факт имеет место быть...
    Что делать и куда копать просто ума уже не приложу.

    ===================
    Ну и как-бы вопрос в догонку.
    какие именно конфиги надо перенести с одного хостинга на другой чтобы сделать точную копию конфигурации хостинга?
    интуитивно пришел к выводу что список вот такой:
    ./etc/php.ini
    /etc/php.conf
    /etc/nginx/nginx.conf
    /etc/php-fpm.d/www.conf

    Я что-то упустил?
    Просто, честно признаться, так надоело за 3 дня искать ошибку, что я просто хочу её исправить и продолжить работу над плагином.
     
  2. Yoskaldyr

    Yoskaldyr Пользователь

    Регистрация:
    27.09.10
    Сообщения:
    1 921
    Симпатии:
    1 163
    Версия XF:
    1.0.4
    SELinux

    Я не знаю какие сейчас флаги SELinux-а стоят и под какими пользователями все крутится (обычно сайты под центос ставят или в хому пользователя или в /var/www/)
    Как вариант выполнить команды ниже (не факт что поможет, но проблема 100% в SELinux-е).

    правильно с точки зрения безопасности:
    Код:
    restorecon -R /usr/share/nginx/html/
    cd /usr/share/nginx/html/
    chcon -R -t httpd_sys_content_rw_t data internal_data
    это если нужны права на запись для всех папок и файлов форума (для всякого шлака типа addon install and upgrade):
    Код:
    restorecon -R /usr/share/nginx/html/
    chcon -R -t httpd_sys_content_rw_t /usr/share/nginx/html
     
  3. AfterWork

    AfterWork Местный

    Регистрация:
    14.04.15
    Сообщения:
    49
    Симпатии:
    0
    Версия XF:
    1.5.10
    Помогло. Ума не приложу как я так встрял. Спасибо огромное.
     

Поделиться этой страницей