#memcached #php #yii #nginx
Итак необходимо реализовать следующее:
Yii пишет в кеш данные, а далее данные должны быть доступны по адресу:
site.ru/_stat/ключ кеша
В качестве сервера у нас нгинкс, ос: центОс.
Итак:
if(!Yii::app()->cache->set($GameProposalModel->proposal_id, 'renderTable('.json_encode($toCache).')'))
Я записываю данные в кеш, к примеру ключ будет равен 30 ($GameProposalModel->proposal_id
= 30)
Далее идем на нгинкс:
location /_stat {
set $memcached_key "$uri?$args";
memcached_pass 127.0.0.1:11211;
error_page 404 502 504 = @fallback;
add_header Content-Type "text/html; charset=utf-8";
}
location @fallback {
proxy_pass http://localhost:9000;
}
Далее я так прикинул, что по ссылку site.ru/_stat/30 я должен получить данные моего
кеша.
Но я получаю только 502 Bad Gateway
Пример из
http://nginx.org/ru/docs/http/ngx_http_memcached_module.html
Подскажите пожалуйста в чем проблема ?
Ответы
Ответ 1
Вы делаете запрос к сайту site.ru/_stat/30 . Запрос обрабатывает ядро YII - отвечает за это UrlManager согласно настройкам. Также необходимо глянуть что находиться в .htaccess. После работы UrlManager вызывается контроллер, выбирается его действие - передаются в действие все параметры - и действие выполняется. Поэтому вам нада в контроллере делать действие отвечающие за выборку кэша из memcached и отдачу его клиенту
Комментариев нет:
Отправить комментарий