diff --git a/class/core/site_api.py b/class/core/site_api.py index ca3983da2..d26cd34e6 100755 --- a/class/core/site_api.py +++ b/class/core/site_api.py @@ -2533,7 +2533,9 @@ location ^~ {from} {\n\ def getPhpVersion(self): phpVersions = ('00', '52', '53', '54', '55', - '56', '70', '71', '72', '73', '74', '80', '81', '82', '83') + '56', '70', '71', '72', '73', + '74', '80', '81', '82', '83', + '84') data = [] for val in phpVersions: tmp = {} @@ -2667,10 +2669,8 @@ location ^~ {from} {\n\ return mw.returnJson(False, '不要以网站根目录创建站点!') siteMenu = json.loads(webname) - self.siteName = self.toPunycode( - siteMenu['domain'].strip().split(':')[0]).strip() - self.sitePath = self.toPunycodePath( - self.getPath(path.replace(' ', ''))) + self.siteName = self.toPunycode(siteMenu['domain'].strip().split(':')[0]).strip() + self.sitePath = self.toPunycodePath(self.getPath(path.replace(' ', ''))) self.sitePort = port.strip().replace(' ', '') self.phpVersion = version diff --git a/plugins/zabbix/conf/zabbix.nginx.conf b/plugins/zabbix/conf/zabbix.nginx.conf new file mode 100644 index 000000000..9a87ed2fd --- /dev/null +++ b/plugins/zabbix/conf/zabbix.nginx.conf @@ -0,0 +1,51 @@ +server +{ + # reuseport 只能在一个server出现一次 + listen {$ZABBIX_PORT}; + server_name 127.0.0.1; + index index.php index.html index.htm default.php default.htm default.html; + root {$ZABBIX_ROOT}; + + #SSL-START + #error_page 404/404.html; + #SSL-END + + #301-START + + #PROXY-START + + #ERROR-PAGE-START + #error_page 404 /404.html; + #error_page 502 /502.html; + #ERROR-PAGE-END + + #PHP-INFO-START + include ${SERVER_PATH}/php/conf/enable-php-80.conf; + #PHP-INFO-END + + #REWRITE-START + include ${SERVER_PATH}/nginx/rewrite/zabbix.conf; + #REWRITE-END + + + #禁止访问的文件或目录 + location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md) + { + return 404; + } + + #一键申请SSL证书验证目录相关设置 + location ~ \.well-known{ + allow all; + } + + location ~ .*\\.(gif|jpg|jpeg|png|bmp|swf|js|css)$ + { + expires 30d; + error_log /dev/null; + access_log /dev/null; + } + + access_log /www/wwwlogs/zabbix.log main; + error_log /www/wwwlogs/zabbix.error.log; +} \ No newline at end of file diff --git a/plugins/zabbix/index.py b/plugins/zabbix/index.py index f3b8b1115..93179cad3 100755 --- a/plugins/zabbix/index.py +++ b/plugins/zabbix/index.py @@ -120,23 +120,31 @@ def contentReplace(content): service_path = mw.getServerDir() content = content.replace('{$ROOT_PATH}', mw.getRootDir()) content = content.replace('{$SERVER_PATH}', service_path) - content = content.replace('{$SERVER_APP}', service_path + '/redis') - content = content.replace('{$REDIS_PASS}', mw.getRandomString(10)) + content = content.replace('{$ZABBIX_ROOT}', '/usr/share/zabbix') + content = content.replace('{$ZABBIX_PORT}', '18888') return content def initDreplace(): + nginx_src_tpl = getPluginDir()+'/conf/zabbix.nginx.conf' + nginx_dst_tpl = mw.getServerDir()+'/web_conf/nginx/vhost/zabbix.conf' - file_tpl = getInitDTpl() - service_path = os.path.dirname(os.getcwd()) + if not os.path.exists(nginx_dst_tpl): + content = mw.readFile(nginx_src_tpl) + content = contentReplace(content) + mw.writeFile(nginx_dst_tpl, content) + # zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | /www/server/mysql/bin/mysql --default-character-set=utf8mb4 -uzabbix -p"yWBMNWcFTzjh3trM" zabbix - return file_bin + # service zabbix-server start + return True def zOp(method): + initDreplace() + current_os = mw.getOs() if current_os.startswith("freebsd"): data = mw.execShell('service ' + getPluginName() + ' ' + method)