- 小程序中头像昵称填写
葱头的故事
小程序小程序
官方文档参考小程序用户头像昵称获取规则调整公告新的小程序版本不能通过wx.getUserProfile和wx.getUserInfo获取用户信息注意昵称填写,同时绑定了input和change事件(input是用户输入时触发,change是直接选择微信昵称时触发)getAvater(event){console.log(9,event);console.log('event',event.deta
- javaweb文件上传:@MultipartConfig注解与Apache Commons FileUpload对比
yuren_xia
后端技术apachejavatomcat
在JavaWeb应用中处理文件上传时,可以选择使用@MultipartConfig注解或第三方库如ApacheCommonsFileUpload(通常简称为fileupload)。以下是两者的比较和建议:使用@MultipartConfig注解简介:@MultipartConfig是JavaServlet规范中用于处理multipart/form-data请求(通常是文件上传)的注解。它简化了在S
- redis集群迅速搭建(个人学习和测试用)
yinhezhanshen
redis学习java
笔者使用ubuntu操作系统下载redis地址:Indexof/releases/,选择最新的版本下载。解压后进入目录,直接make就可以编译。编译成功后在src目录下会生成redis-server和redis-cli可执行文件。进入redis目录下的utils/create-cluster目录,执行./create-clusterstart,快速启动6个实例zy@zy-VirtualBox:~/
- 神经网络中的Adam
化作星辰
神经网络人工智能深度学习
Adam(AdaptiveMomentEstimation)是一种广泛使用的优化算法,结合了RMSprop和动量(Momentum)的优点。它通过计算梯度的一阶矩估计(mean)和二阶矩估计(uncenteredvariance),为每个参数提供自适应学习率。Adam由DiederikP.Kingma和JimmyBa在2014年的论文《Adam:AMethodforStochasticOptimi
- 指定的服务已标记为删除
勤不了一点
windowswindows
同时也适合xampp下的apache、mysql等各个服务转发:https://www.iteye.com/blog/inexus-1608761想重新在windows里部署svn服务,所以第一步删除svn服务:管理员权限下运行cmd:“scdeletesvnserver”之后再部署svn的服务:“sccreatesvnserverbinpath="C:\ProgramFiles\Tortoise
- Linux查看磁盘命令df-h详解
小毛驴850
linux服务器运维
df-h是一个常用的Linux命令,用于查看文件系统的磁盘使用情况并以易于阅读的方式显示。以下是df-h命令的详细解释:-h:以人类可读的格式显示磁盘空间大小。例如,使用GB、MB、KB等单位代替字节。执行df-h命令后,将会显示如下输出:FilesystemSizeUsedAvailUse%Mountedon/dev/sda120G10G10G50%/tmpfs2.0G02.0G0%/dev/s
- Django模板系统深入
jay丿
djangosqlite数据库
Django模板系统深入模板继承和重用Block标签在Django模板中,{%block%}标签允许你定义一个“块”,这个块可以在子模板中被重写或填充。{%blocktitle%}MySite{%endblock%}Welcometomysite{%blockcontent%}{%endblock%}{%extends"base.html"%}{%blocktitle%}MyChildPage{%
- drupal如何查看已有网页的源码
dev.null
前端前端
在Drupal中查看已有网页的源码(HTML源代码),你可以通过以下几种方法:方法1:使用浏览器的开发者工具打开网页:访问你想查看源代码的页面。右键点击页面:在页面的任意空白处,右键点击,然后选择查看页面源代码(ViewPageSource)或者检查(Inspect)选项(具体名称取决于浏览器)。查看源代码:如果选择了“查看页面源代码”,浏览器将会显示该页面的HTML源码。如果选择了“检查”,会打
- 【云原生】Docker搭建知识库文档协作平台Confluence
逆风飞翔的小叔
运维ConfluenceConfluence搭建Confluence使用Confluence搭建与使用Confluence使用详解
目录一、前言二、企业级知识库文档工具部署形式2.1开源工具平台2.1.1开源工具优点2.1.2开源工具缺点2.2私有化部署2.3混合部署三、如何选择合适的知识库平台工具3.1明确目标和需求3.2选择合适的知识库平台工具四、Confluence介绍4.2confluence特点4.3Confluence中的几个概念4.3.1空间(Space)4.3.2Dashboard4.3.3页面(Page)4.
- Python爬虫实战(一):翻页爬取数据存入SqlServer_python爬虫翻页
2401_84563438
程序员python爬虫sqlserver
print(str(e))#关闭游标,断开数据库cursor.close()db.close()#实现主要逻辑defrun(self):fortype_numinrange(1,46):#1.拼接网页获取每个类别的页数pageurl=self.baseurl%(1,type_num)html_str=self.parse_url(url)page=self.get_page_num(html_st
- ike-scan
sweet poison
kalilinux常用工具翻译
用法ike-scan[options][hosts...]注意必须在命令行上指定目标主机,除非–file选项是给定,在这种情况下,将从指定文件读取目标。目标主机可以指定为IP地址或主机名。你也可以将目标指定为IPnetwork/bits(例如192.168.1.0/24),以指定所有主机在给定的网络中(包括网络和广播地址),或IPstartIPend(例如192.168.1.3-192.168.1
- Vue的测试策略:如何使用单元测试和端对端测试来确保Vue应用的质量
哎 你看
vuevue.js单元测试前端
介绍测试的重要性在开发软件应用的过程中,测试具有重要的作用。它可以帮助开发者捕捉到程序中的错误和漏洞,保证软件的质量。功能性的测试可以帮助确认应用程序或系统满足了其功能需求。测试驱动的开发方式,如TDD(Test-DrivenDevelopment),也被广泛提倡并实践,因为它可以在早期发现并解决问题,提升开发效率。在持续集成和持续发布(CI/CD)的工作流中,自动化测试是保证代码质量的关键,它帮
- 如何收集k8s pod的服务日志(rancher)
一方有点方
kubernetesrancher容器
一、环境情况说明当前环境是k8s+rancher+filebeat+es+kibana本文只讲解部署filebeat收集容器日志的过程、使用daemonset的方式部署filebeat,es+kibana+k8s已提前创建好的二、部署安装1、在已创建完成的k8s环境中,用kubectl先创建一个命名空间elk-log,新增一个filebeat目录,上传一下4个代码文件filebeat.daemon
- vue3中测试:单元测试、组件测试、端到端测试
皓月当空hy
vue.js
1、单元测试:单元测试通常适用于独立的业务逻辑、组件、类、模块或函数,不涉及UI渲染、网络请求或其他环境问题。describe('increment',()=>{//测试用例})toBe():用于严格相等比较(===),适用于原始类型或检查引用类型是否指向同一个对象。toEqual():用于深度比较,检查两个对象或数组的内容是否相等(即使它们不是同一个对象)。例如:test('increments
- Spring_IoC控制反转、依赖注入详解
WziH_CSDN
springjava
Spring_IoC一、IoC相关概念简介1、理解【控制】和【依赖】的概念IoC即控制反转、依赖注入。——OOAD依赖倒置【控制】和【依赖】都代表对象之间的关联关系,而且他们在Spring中是一对近义词,控制和依赖几乎是并存的。例如,现有如下需求:汽车的功能是行驶,司机的功能是驾驶汽车,令汽车行驶。我们可以通过代码描述上述关系:publicclassCar{//汽车类privateStringna
- 基于SpringBoot+Vue驾校理论课模拟考试系统源码(自动化部署)
.whl
Java学习进阶毕设源码springbootvue.js自动化
DrivingTestSimulationUnity3DProject,subjecttwo,simulateddrivingtest【更新信息】更新时间-2021-1-17解决了方向盘不同机型转动轴心偏离更新时间-2021-2-18加入了手刹系统待更新-2021-6-19(工作太忙少有时间更新,先指出问题)解决了在REC回放下偶然出现的物体回放错位BUG(每一个挂ReplayEntity.cs的
- python dirname_os.path.dirname使用方法
演讲口才
pythondirname
importospath1=os.path.abspath(__file__)print(path1)#当前文件的绝对路径path2=os.path.dirname(os.path.abspath(__file__))print(path2)#当前文件的上一层目录的绝对路径path3=os.path.dirname(os.path.dirname(os.path.abspath(__file__)
- COMP8410 Data Mining S1 2025
后端
COMP8410DataMiningS12025PostgraduateAssignment1Maximummarks100Weight20%ofthetotalmarksforthecourseMintopasshurdle30%LengthMaximumof8pagesexcludingcoverpage,bibliographyandappendices.LayoutA4.Atleast11
- 常用命令_LINUX三剑客之文本处理(一):分别利用awk和sed命令添加列文本
offer_N
linuxawkshell
常用命令_LINUX三剑客之文本处理首先是源文本test.tcl@@cattest.tcl-switch_core_1HEADBUFMDV32_140P7T35R+FIXED(137260030000)FS;-switch_core_2HEADBUFMDV32_140P7T35R+FIXED(145100030000)FS;-switch_core_3HEADBUFMDV32_140P7T35R+
- python os.path模块常用方法详解
清平乐的技术博客
Python高级应用
pythonos.path模块常用方法详解os.path模块主要用于文件的属性获取,在编程中经常用到,以下是该模块的几种常用方法。更多的方法可以去查看官方文档:http://docs.python.org/library/os.path.html1.os.path.abspath(path)返回path规范化的绝对路径。os.path.abspath(‘test.csv’)‘C:\Python25
- Deepseek开源周第四天:从 DualPipe 到 EPLB
deepseek开源
Deepseek开源周第四天:从DualPipe到EPLB前言上周deepseek宣布,将在本周陆续发布五个开源项目,这些库已经在生产环境中经过了记录、部署和实战测试。今天是deepseek开源周的第四天,deepseek发布了三个开源项目,分别是GitHub-deepseek-ai/DualPipeGitHub-deepseek-ai/eplbGitHub-deepseek-ai/profile
- ubuntu14.04 sqlite3 及可视化工具安装
Andre-S
linux工具可视化工具sqlite3界面数据库ubuntu
1.安装sqlite3sudoapt-getinstallsqlite3检查版本:sqlite3-version2.使用方法查看帮助信息.help创建数据库sqlite3test.db查询数据库信息.database查看该数据库内的表信息.tables退出.exit3.安装图形化界面sudoapt-getinstallsqlitebrowser4.使用方法sqlitebrowsertest.db注
- JSP介绍(二)
frandiy
java开发语言
JSP介绍什么是JSPjsp(JavaServerPage)是JavaEE规范中的Web组件,用来编写动态页面。JSP文件以.jsp为后缀,通常存放在Eclipse的工程目录中的WebContent目录下,与静态资源使用方式非常相似。内容构成:JSP文件中的内容是HTML和Java代码的结合,静态部分使用HTML和文本,动态部分使用Java代码。Web容器处理JSP文件请求的三个阶段翻译阶段:We
- 【Java】I/O 流篇 —— File 类与缓冲流
熬夜超级玩家
#Java基础java开发语言
目录File类File类构造方法常见成员方法判断与获取创建与删除获取并遍历缓冲流字节缓冲流构造方法代码示例原理字符缓冲流构造方法readLine()newLine()缓冲区File类File对象表示一个路径,可以是文件的路径,也可以是文件夹的路径这个路径可以是存在的,也允许是不存在的绝对路径和相对路径的区别:绝对路径是指从根目录开始描述文件或目录位置的完整路径。无论你在系统中的哪个位置,使用绝对路
- sqlite 安装 可视化笔记
AI算法网奇
python宝典sqlite笔记数据库
目录免费可视化工具:python安装免费可视化工具:SQLiteStudio(免费)DBBrowserforSQLite(免费)实用的SQLite数据库可视化管理工具推荐_sqllite工具-CSDN博客python安装pipinstallpysqlite3,这个有的电脑报错,dll找不到。在网址SQLiteDownloadPage下载
- Python 调用本地部署DeepSeek的API 详细指南
kunwen123
python
B站先查看deepseek的应用和API调用和本地化部署这三方面知识确认Ollama是否正确运行如果你使用Ollama部署了DeepSeek,默认API运行在11434端口。首先,检查Ollama是否正常运行:curlhttp://localhost:11434/api/tags如果返回:{“models”:[“deepseek-coder:latest”,“deepseek-chat:lates
- 爬取淘宝商品链接的图片和视频-第一部分
yunAike
前端javascript开发语言python
输入需要爬取商品品类的网址和需要爬取的页数,程序将爬取所有商品的链接输入需要爬取商品品类的网址和需要爬取的页数,程序将爬取所有商品的链接importtimefromDrissionPageimportChromiumPageimportcsvfromlxmlimportetreeimportjsonimportos#确保存放数据的data文件夹存在,若不存在就创建folder_path=r".\d
- C语言综合案例:学生成绩管理系统
k要开心
c语言开发语言
C语言综合案例:学生成绩管理系统需求1.存储最多50名学生的信息(不使用结构体)2.每个学生包含:学号(字符数组)姓名(字符数组)3门课程成绩(一维数组)3.实现功能菜单:添加学生信息显示所有学生信息计算学生平均分查找最高分科目退出系统代码/*************************************************************************>FileN
- Buildroot 添加自定义模块-内置文件到文件系统
ansondroider
Linuxbuildrootlinux
目录概述实现步骤1.创建包目录和文件结构2.配置Config.in3.定义cp_bin_files.mk4.添加源文件`install.sh``my.conf`5.配置与编译概述Buildroot是一个高度可定制和模块化的嵌入式Linux构建系统,适用于从简单到复杂的各种嵌入式项目.buildroot的源码中buildroot/package下面放着应用软件的配置文件,每个应用软件的配置文件有Co
- Python Cookbook-2.16 遍历目录树
我不会编程555
#Python学习python开发语言
任务需要检查一个“目录”,或者某个包含子目录的目录树,并根据某种模式迭代所有的文件(也可能包含子目录)。解决方案Python标准库模块os中的生成器(generator)os.walk对于这个任务来说完全够用了不过我们可以给它打扮打扮,将其封装为一个我们自己的函数:importos,fnmatchdefall_files(root,patterns='*',single_level=False,y
- 多线程编程之理财
周凡杨
java多线程生产者消费者理财
现实生活中,我们一边工作,一边消费,正常情况下会把多余的钱存起来,比如存到余额宝,还可以多挣点钱,现在就有这个情况:我每月可以发工资20000万元 (暂定每月的1号),每月消费5000(租房+生活费)元(暂定每月的1号),其中租金是大头占90%,交房租的方式可以选择(一月一交,两月一交、三月一交),理财:1万元存余额宝一天可以赚1元钱,
- [Zookeeper学习笔记之三]Zookeeper会话超时机制
bit1129
zookeeper
首先,会话超时是由Zookeeper服务端通知客户端会话已经超时,客户端不能自行决定会话已经超时,不过客户端可以通过调用Zookeeper.close()主动的发起会话结束请求,如下的代码输出内容
Created /zoo-739160015
CONNECTEDCONNECTED
.............CONNECTEDCONNECTED
CONNECTEDCLOSEDCLOSED
- SecureCRT快捷键
daizj
secureCRT快捷键
ctrl + a : 移动光标到行首ctrl + e :移动光标到行尾crtl + b: 光标前移1个字符crtl + f: 光标后移1个字符crtl + h : 删除光标之前的一个字符ctrl + d :删除光标之后的一个字符crtl + k :删除光标到行尾所有字符crtl + u : 删除光标至行首所有字符crtl + w: 删除光标至行首
- Java 子类与父类这间的转换
周凡杨
java 父类与子类的转换
最近同事调的一个服务报错,查看后是日期之间转换出的问题。代码里是把 java.sql.Date 类型的对象 强制转换为 java.sql.Timestamp 类型的对象。报java.lang.ClassCastException。
代码:
- 可视化swing界面编辑
朱辉辉33
eclipseswing
今天发现了一个WindowBuilder插件,功能好强大,啊哈哈,从此告别手动编辑swing界面代码,直接像VB那样编辑界面,代码会自动生成。
首先在Eclipse中点击help,选择Install New Software,然后在Work with中输入WindowBui
- web报表工具FineReport常用函数的用法总结(文本函数)
老A不折腾
finereportweb报表工具报表软件java报表
文本函数
CHAR
CHAR(number):根据指定数字返回对应的字符。CHAR函数可将计算机其他类型的数字代码转换为字符。
Number:用于指定字符的数字,介于1Number:用于指定字符的数字,介于165535之间(包括1和65535)。
示例:
CHAR(88)等于“X”。
CHAR(45)等于“-”。
CODE
CODE(text):计算文本串中第一个字
- mysql安装出错
林鹤霄
mysql安装
[root@localhost ~]# rpm -ivh MySQL-server-5.5.24-1.linux2.6.x86_64.rpm Preparing... #####################
- linux下编译libuv
aigo
libuv
下载最新版本的libuv源码,解压后执行:
./autogen.sh
这时会提醒找不到automake命令,通过一下命令执行安装(redhat系用yum,Debian系用apt-get):
# yum -y install automake
# yum -y install libtool
如果提示错误:make: *** No targe
- 中国行政区数据及三级联动菜单
alxw4616
近期做项目需要三级联动菜单,上网查了半天竟然没有发现一个能直接用的!
呵呵,都要自己填数据....我了个去这东西麻烦就麻烦的数据上.
哎,自己没办法动手写吧.
现将这些数据共享出了,以方便大家.嗯,代码也可以直接使用
文件说明
lib\area.sql -- 县及县以上行政区划分代码(截止2013年8月31日)来源:国家统计局 发布时间:2014-01-17 15:0
- 哈夫曼加密文件
百合不是茶
哈夫曼压缩哈夫曼加密二叉树
在上一篇介绍过哈夫曼编码的基础知识,下面就直接介绍使用哈夫曼编码怎么来做文件加密或者压缩与解压的软件,对于新手来是有点难度的,主要还是要理清楚步骤;
加密步骤:
1,统计文件中字节出现的次数,作为权值
2,创建节点和哈夫曼树
3,得到每个子节点01串
4,使用哈夫曼编码表示每个字节
- JDK1.5 Cyclicbarrier实例
bijian1013
javathreadjava多线程Cyclicbarrier
CyclicBarrier类
一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时 CyclicBarrier 很有用。因为该 barrier 在释放等待线程后可以重用,所以称它为循环的 barrier。
CyclicBarrier支持一个可选的 Runnable 命令,
- 九项重要的职业规划
bijian1013
工作学习
一. 学习的步伐不停止 古人说,活到老,学到老。终身学习应该是您的座右铭。 世界在不断变化,每个人都在寻找各自的事业途径。 您只有保证了足够的技能储
- 【Java范型四】范型方法
bit1129
java
范型参数不仅仅可以用于类型的声明上,例如
package com.tom.lang.generics;
import java.util.List;
public class Generics<T> {
private T value;
public Generics(T value) {
this.value =
- 【Hadoop十三】HDFS Java API基本操作
bit1129
hadoop
package com.examples.hadoop;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoo
- ua实现split字符串分隔
ronin47
lua split
LUA并不象其它许多"大而全"的语言那样,包括很多功能,比如网络通讯、图形界面等。但是LUA可以很容易地被扩展:由宿主语言(通常是C或 C++)提供这些功能,LUA可以使用它们,就像是本来就内置的功能一样。LUA只包括一个精简的核心和最基本的库。这使得LUA体积小、启动速度快,从 而适合嵌入在别的程序里。因此在lua中并没有其他语言那样多的系统函数。习惯了其他语言的字符串分割函
- java-从先序遍历和中序遍历重建二叉树
bylijinnan
java
public class BuildTreePreOrderInOrder {
/**
* Build Binary Tree from PreOrder and InOrder
* _______7______
/ \
__10__ ___2
/ \ /
4
- openfire开发指南《连接和登陆》
开窍的石头
openfire开发指南smack
第一步
官网下载smack.jar包
下载地址:http://www.igniterealtime.org/downloads/index.jsp#smack
第二步
把smack里边的jar导入你新建的java项目中
开始编写smack连接openfire代码
p
- [移动通讯]手机后盖应该按需要能够随时开启
comsci
移动
看到新的手机,很多由金属材质做的外壳,内存和闪存容量越来越大,CPU速度越来越快,对于这些改进,我们非常高兴,也非常欢迎
但是,对于手机的新设计,有几点我们也要注意
第一:手机的后盖应该能够被用户自行取下来,手机的电池的可更换性应该是必须保留的设计,
- 20款国外知名的php开源cms系统
cuiyadll
cms
内容管理系统,简称CMS,是一种简易的发布和管理新闻的程序。用户可以在后端管理系统中发布,编辑和删除文章,即使您不需要懂得HTML和其他脚本语言,这就是CMS的优点。
在这里我决定介绍20款目前国外市面上最流行的开源的PHP内容管理系统,以便没有PHP知识的读者也可以通过国外内容管理系统建立自己的网站。
1. Wordpress
WordPress的是一个功能强大且易于使用的内容管
- Java生成全局唯一标识符
darrenzhu
javauuiduniqueidentifierid
How to generate a globally unique identifier in Java
http://stackoverflow.com/questions/21536572/generate-unique-id-in-java-to-label-groups-of-related-entries-in-a-log
http://stackoverflow
- php安装模块检测是否已安装过, 使用的SQL语句
dcj3sjt126com
sql
SHOW [FULL] TABLES [FROM db_name] [LIKE 'pattern']
SHOW TABLES列举了给定数据库中的非TEMPORARY表。您也可以使用mysqlshow db_name命令得到此清单。
本命令也列举数据库中的其它视图。支持FULL修改符,这样SHOW FULL TABLES就可以显示第二个输出列。对于一个表,第二列的值为BASE T
- 5天学会一种 web 开发框架
dcj3sjt126com
Web框架framework
web framework层出不穷,特别是ruby/python,各有10+个,php/java也是一大堆 根据我自己的经验写了一个to do list,按照这个清单,一条一条的学习,事半功倍,很快就能掌握 一共25条,即便很磨蹭,2小时也能搞定一条,25*2=50。只需要50小时就能掌握任意一种web框架
各类web框架大同小异:现代web开发框架的6大元素,把握主线,就不会迷路
建议把本文
- Gson使用三(Map集合的处理,一对多处理)
eksliang
jsongsonGson mapGson 集合处理
转载请出自出处:http://eksliang.iteye.com/blog/2175532 一、概述
Map保存的是键值对的形式,Json的格式也是键值对的,所以正常情况下,map跟json之间的转换应当是理所当然的事情。 二、Map参考实例
package com.ickes.json;
import java.lang.refl
- cordova实现“再点击一次退出”效果
gundumw100
android
基本的写法如下:
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
//navigator.splashscreen.hide();
document.addEventListener("b
- openldap configuration leaning note
iwindyforest
configuration
hostname // to display the computer name
hostname <changed name> // to change
go to: /etc/sysconfig/network, add/modify HOSTNAME=NEWNAME to change permenately
dont forget to change /etc/hosts
- Nullability and Objective-C
啸笑天
Objective-C
https://developer.apple.com/swift/blog/?id=25
http://www.cocoachina.com/ios/20150601/11989.html
http://blog.csdn.net/zhangao0086/article/details/44409913
http://blog.sunnyxx
- jsp中实现参数隐藏的两种方法
macroli
JavaScriptjsp
在一个JSP页面有一个链接,//确定是一个链接?点击弹出一个页面,需要传给这个页面一些参数。//正常的方法是设置弹出页面的src="***.do?p1=aaa&p2=bbb&p3=ccc"//确定目标URL是Action来处理?但是这样会在页面上看到传过来的参数,可能会不安全。要求实现src="***.do",参数通过其他方法传!//////
- Bootstrap A标签关闭modal并打开新的链接解决方案
qiaolevip
每天进步一点点学习永无止境bootstrap纵观千象
Bootstrap里面的js modal控件使用起来很方便,关闭也很简单。只需添加标签 data-dismiss="modal" 即可。
可是偏偏有时候需要a标签既要关闭modal,有要打开新的链接,尝试多种方法未果。只好使用原始js来控制。
<a href="#/group-buy" class="btn bt
- 二维数组在Java和C中的区别
流淚的芥末
javac二维数组数组
Java代码:
public class test03 {
public static void main(String[] args) {
int[][] a = {{1},{2,3},{4,5,6}};
System.out.println(a[0][1]);
}
}
运行结果:
Exception in thread "mai
- systemctl命令用法
wmlJava
linuxsystemctl
对比表,以 apache / httpd 为例 任务 旧指令 新指令 使某服务自动启动 chkconfig --level 3 httpd on systemctl enable httpd.service 使某服务不自动启动 chkconfig --level 3 httpd off systemctl disable httpd.service 检查服务状态 service h