Периодическая ошибка сервера AWS Linux AMI "Файл не существует: /var/www/html/var"

Периодическая ошибка "Файл не существует: /var/www/html/var" из всех областей приложения Zend MVC, приводящий к тому, что страницы иногда не загружаются - когда они обычно загружаются идеально.

Наша установка
Приложение MVC в стеке LAMP на AWS с:

  • Внешнее приложение Zend 1 на среднем c1 AWS linux AMI 64bit
  • База данных MySQL на среднем 64-битном экземпляре AWS linux AMI
  • запуск форума phpbb3 параллельно с приложением MVC на сервере приложений, с двумя базами данных на сервере db (одна для приложения, одна для phpbb)
  • php 5.4.22
  • MySQL 5.1.72 + MySQL
  • эластичные IP-адреса, связанные с серверами приложений и баз данных
  • серверы приложений и БД подключаются с использованием частного IP-адреса (т. е. сервер приложений подключается к частному IP-адресу сервера БД, группа безопасности сервера БД принимает частный iP сервера приложений через порт 3306)
  • в настоящее время работает сайт как сайт разработчика, используя каталог dev с основного сайта, например:

    www.mysite.com/dev/

  • в /dev/configs/application.ini мы определяем следующее:

    setting.basedir = dev   
    setting.baseurl = http://www.mysite.com/dev   
    setting.securebaseurl = http://www.mysite.com/dev  
    
  • у нас есть DNS с godaddy, и мы используем A host = IP address (то есть IP.IP.IP.IP), а не cname

  • мы не используем виртуальные хосты (поскольку у нас есть только один сайт на "сервер")
  • у нас есть файлы htaccess и различные перенаправления, но на локальных серверах LAMP нет ошибок
  • мы используем minify и закомментируем RewriteBase (по умолчанию)
  • Настройки httpd.conf в основном по умолчанию (дайте мне знать, если есть важные, которые не перечислены здесь)

    ServerName www.mysite.com
    
    UseCanonicalName Off
    
    DocumentRoot "/var/www/html"  
    
    <Directory />  
     Options FollowSymLinks  
     AllowOverride ALL  
    </Directory> 
    
    <Directory "/var/www/html">  
     Options Indexes FollowSymLinks
     AllowOverride All
     Order allow,deny
     Allow from all
    </Directory>
    

Эта проблема
В /etc/httpd/logs/error_log появляется следующая периодически возникающая ошибка:

Файл не существует: /var/www/html/var, реферер: http://www.mysite.com/dev/various

При возникновении этой ошибки отображается половина полной страницы той части сайта, к которой мы пытались получить доступ, с сообщением:

"Не удалось сохранить метаданные в metadataCache"

Ошибка является периодической, поскольку мы не можем повторить ее с какой-либо последовательностью действий или временем:

  • повторное обновление страницы, кажется, избавляет от проблемы, страница в конечном итоге будет отображаться правильно, а остальная часть сайта может быть доступна в течение длительного времени
  • он не зависит от браузера или IP-адреса (используется для доступа к сайту)
  • он кажется независимым от страницы, к которой мы пытаемся получить доступ (т.е. у нас были ошибки со всех страниц сайта)
  • Кажется, что ошибка появляется после того, как сайт на некоторое время простаивает, а затем получает доступ к новой части сайта - хотя это противоречиво (иногда ошибка появляется на полпути при активном использовании сайта).

У нас нет этой проблемы на локальных машинах - у нас есть около 3 различных локальных машин на машинах Mac с лампами и окнами с нашими разработчиками.

У нас не было проблемы с исходной конфигурацией AWS, которая была app + database на одном экземпляре linux ami micro - доступ к нему осуществлялся через ec2 addres & configs/application.ini baseurl с адресом ec2 (т.е. мы не использовали настройки хоста DNS A в этот этап)

Теории и вещи, которые мы попробовали:

  1. Когда мы обновляем настройки application.ini, чтобы использовать IP, а не DN, мы, похоже, не получаем ошибку (которая указывает на какой-либо цикл root / dns сервера)

    setting.basedir = dev   
    setting.baseurl = http://www.IP.IP.IP.IP.com/dev   
    setting.securebaseurl = http://www.IP.IP.IP.IP.com/dev 
    
  2. Сначала мы думали, что в httpd.conf было закомментировано имя сервера, но когда мы установили его на www.mysite.com, mysite.com или "www.mysite.com", это не имеет значения

  3. Мы сделали обычные шаги по удалению всего кеша Zend + forum + browser, перезапуску Apache, перезапуску MySQL и т. Д.

Ничто из того, что мы делаем, не указывает на источник ошибки.

0 ответов

Другие вопросы по тегам