tpl->display('index'); // } } /** * 判断ip,输出首页 */ public function actionMini() { $this->tpl->display('mini'); } /** * 判断ip,输出首页 */ public function actionSw() { // 不需要默认头部信息 $GLOBALS['FORBID_ORIGIN'] = true; $path = BASE_DIR . 'dist/sw.js'; // 增加浏览器缓存 $filemd5 = md5_file($path); $this->_addEtag($filemd5); $content = file_get_contents($path); header("Content-Type: application/javascript; charset=utf-8"); Response::exitMsg($content, CODE_SUCCESS, null, true); } private function _addEtag($etag) { // always send headers header("Etag: $etag"); // exit if not modified if (@trim($_SERVER['HTTP_IF_NONE_MATCH']) == $etag) { header("HTTP/1.1 304 Not Modified"); Response::exitMsg('', CODE_SUCCESS, '304 Not Modified'); } } /** * 分享跳转 * @author solu * @param $args */ public function actionShare($args) { $rules = [ 'group_name' => ['string', 'reg' => '/^[a-z0-9\.]+/i', 'desc' => '群名'], ]; Param::checkParam2($rules, $args); $objGroup = new GroupInfo(); $group = $objGroup->objTable->getRow(['group_name' => $args['group_name']], ['_field' => 'group_id, group_name, group_title']); $groupId = $group['group_id'] ?: GroupInfo::OFFICIAL_ID; $format = '%s/#/group/%s'; if (is_mobile_request()) { $format = '%s/h5.html#/group/%s'; } $url = sprintf($format, URL_SELF, $groupId); Response::exitMsg(""); } }