热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何部署Zabbix监控实现监测和报警机制

这篇文章的知识点包括:Zabbix的安装部署、Zabbix监控的实现以及Zabbix报警机制的实现,阅读完整文相信大家对Zabbix监控的使用有了一定的认识。Zabb

这篇文章的知识点包括:Zabbix的安装部署、Zabbix监控的实现以及Zabbix报警机制的实现,阅读完整文相信大家对Zabbix监控的使用有了一定的认识。

Zabbix部署

实验环境:

CentOS 7-2:192.168.18.147(监测端:部署安装zabbix)

CentOS 7-3:192.168.18.128(被监测端)

监测端操作:

[root@cacti ~]# systemctl stop firewalld.service        #关闭防火墙功能
[root@cacti ~]# systemctl disable firewalld.service     #开机禁用防火墙功能
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@cacti ~]# setenforce 0                            #关闭增强型安全功能

`安装LAMP架构`
[root@cacti ~]# yum install -y \
httpd \
mariadb-server mariadb \
php \
php-mysql \
php-gd \
libjpeg* \
php-ldap \
php-odbc \
php-pear \
php-xml \
php-xmlrpc \
php-mhash

`编辑apache配置文件`
[root@cacti ~]# vim /etc/httpd/conf/httpd.conf
95 ServerName www.yun.com:80                        #第95行,删除注释,域名自定义
164     DirectoryIndex index.html index.php         #164行,添加首页支持类类型index.php
#修改完成后按Esc退出插入模式,输入:wq保存退出

`修改时区为中国`
[root@cacti ~]# vim /etc/php.ini
878 date.timezOne= PRC     #878行,把前面模板的;号删除,后面添加中国时区PRC
#修改完成后按Esc退出插入模式,输入:wq保存退出

[root@cacti ~]# systemctl start httpd.service       #启动apache服务
[root@cacti ~]# systemctl start mariadb.service     #启动mariadb服务
[root@cacti ~]# netstat -ntap | egrep '(3306|80)'   #使用egrep命令同时查看3306和80端口
tcp        0      0 0.0.0.0:3306            0.0.0.0:*            LISTEN      4410/mysql   
tcp6       0      0 :::80                   :::*                 LISTEN      4131/httpd    
`初始化数据库配置`
[root@cacti ~]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):   #此处直接回车
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y      #设置密码
New password:       #abc123
Re-enter new password:      #确认输入:abc123
Password updated successfully!
Reloading privilege tables..
 ... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] n     #是否删除匿名用户,选择不删除
 ... skipping.
Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y   #是否远程连接
 ... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] n      #是否删除测试数据库
 ... skipping.
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y    #是否重新加载
 ... Success!
Cleaning up...
All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!

#验证登录数据库
[root@cacti ~]# mysql -u root -p
Enter password:     #输入密码abc123
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 5.5.64-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

`创建zabbix数据库,并且设置为utf8形式,把里面的字符串转换为二进制`
MariaDB [(none)]> CREATE DATABASE zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
`提升用户`
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| zabbix             |
+--------------------+
5 rows in set (0.00 sec)
#此时有zabbix数据库,需要创建管理里这个数据库的用户
MariaDB [(none)]> GRANT all privileges ON *.* TO 'zabbix'@'%' IDENTIFIED BY 'admin123';
Query OK, 0 rows affected (0.01 sec)    
#把所有数据库和所有表都交给zabbix进行管理,并且设置密码为admin123

MariaDB [(none)]> flush privileges;     #刷新
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> quit      #退出数据库
Bye

`测试php基本信息`
[root@localhost ~]# cd /var/www/html/
[root@localhost html]# ls
[root@localhost html]# vim index.php
此时在宿主机中输入:192.168.18.147,查看是否可以访问php页面:

如何部署Zabbix监控实现监测和报警机制

测试是否能够连接数据库:
[root@localhost html]# vim index.php
#先按3dd删除原有内容,再插入以下内容
Success!!";
else echo "Fail!!";
mysql_close();
?>
此时在宿主机中刷新之前的页面:192.168.18.147,如果可以访问mysql数据库则返回Success提示,如果不能则返回Fail提示:

如何部署Zabbix监控实现监测和报警机制

解决问题:

如果出现Fail报错一般为本地无法登录得问题,可以使用以下方法解决
[root@cacti html]# mysql -u zabbix -p
Enter password:     #此时输入admin123无法登录数据库,说明有用户占用
ERROR 1045 (28000): Access denied for user 'zabbix'@'localhost' (using password: YES)

`先使用root用户登录数据库`
[root@cacti html]# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 15
Server version: 5.5.64-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> select user,host from mysql.user;
+--------+-----------+
| user   | host      |
+--------+-----------+
| zabbix | %         |
| root   | 127.0.0.1 |
| root   | ::1       |
|        | cacti     |
|        | localhost |
| root   | localhost |
+--------+-----------+
6 rows in set (0.00 sec)

`以下操作删除空用户`
MariaDB [(none)]> drop user ''@localhost;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> drop user ''@cacti;
Query OK, 0 rows affected (0.00 sec)

`此时空用户被删除`
MariaDB [(none)]> select user,host from mysql.user;
+--------+-----------+
| user   | host      |
+--------+-----------+
| zabbix | %         |
| root   | 127.0.0.1 |
| root   | ::1       |
| root   | localhost |
+--------+-----------+
4 rows in set (0.00 sec)

MariaDB [(none)]> quit
Bye

`此时再次刷新页面就会显示Success!!成功登录`
部署Zabbix Server
[root@cacti html]# yum install php-bcmath php-mbstring -y
`安装zabbix源`
[root@cacti html]# rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
获取http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
警告:/var/tmp/rpm-tmp.13QGZK: 头V4 RSA/SHA512 Signature, 密钥 ID a14fe591: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:zabbix-release-3.5-1.el7         ################################# [100%]

`查看源`
[root@cacti html]# cd /etc/yum.repos.d/
[root@cacti yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  zabbix.repo
[root@cacti yum.repos.d]# cat zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=http://repo.zabbix.com/zabbix/3.5/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=http://repo.zabbix.com/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1

[root@cacti yum.repos.d]# yum install zabbix-server-mysql zabbix-web-mysql -y
......此处省略多行
已安装:
  zabbix-server-mysql.x86_64 0:4.0.0-1.1rc3.el7    zabbix-web-mysql.noarch 0:4.0.0-1.1rc3.el7

作为依赖被安装:
  OpenIPMI.x86_64 0:2.0.27-1.el7                   OpenIPMI-libs.x86_64 0:2.0.27-1.el7
  OpenIPMI-modalias.x86_64 0:2.0.27-1.el7          fping.x86_64 0:3.10-1.el7
  iksemel.x86_64 0:1.4-2.el7.centos                zabbix-web.noarch 0:4.0.0-1.1rc3.el7

`生成数据库文件`
[root@cacti yum.repos.d]# zcat /usr/share/doc/zabbix-server-mysql-4.0.0/create.sql.gz | mysql -u zabbix -p  zabbix
Enter password:     #输入密码admin123

[root@cacti yum.repos.d]# grep -n '^'[a-Z] /etc/zabbix/zabbix_server.conf
38:LogFile=/var/log/zabbix/zabbix_server.log
49:LogFileSize=0
72:PidFile=/var/run/zabbix/zabbix_server.pid
82:SocketDir=/var/run/zabbix
101:DBName=zabbix
117:DBUser=zabbix
357:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
475:Timeout=4
518:AlertScriptsPath=/usr/lib/zabbix/alertscripts
529:ExternalScripts=/usr/lib/zabbix/externalscripts
565:LogSlowQueries=3000
#是配置文件中缺少的就是密码,其它得系统已自动配置

[root@cacti yum.repos.d]# vim /etc/zabbix/zabbix_server.conf
125 DBPassword=admin123     #125行删除注释,添加密码admin123在=号后面
#修改完成后按Esc退出插入模式,输入:wq保存退出

`修改时区`
[root@cacti yum.repos.d]# vim /etc/httpd/conf.d/zabbix.conf
20         php_value date.timezone Asia/Shanghai        #20行删除注释,失去改为Asia/Shanghai
#修改完成后按Esc退出插入模式,输入:wq保存退出

`修正图表中文乱码`
[root@cacti yum.repos.d]# vim /usr/share/zabbix/include/defines.inc.php
#输入以下内容进行全局字体替换为kaiti
:%s /graphfont/kaiti/g
#修改完成后按Esc退出插入模式,输入:wq保存退出

`复制STKAITI.TTF文件到字体目录下`
[root@cacti yum.repos.d]# mkdir /aaa        #创建挂载目录
[root@cacti yum.repos.d]# mount.cifs //192.168.0.105/rpm /aaa       #进行远程挂载
Password for root@//192.168.0.105/rpm:
[root@cacti yum.repos.d]# cd /aaa/zabbix/
[root@cacti zabbix]# ls
php-bcmath-5.4.16-42.el7.x86_64.rpm    STKAITI.TTF
php-mbstring-5.4.16-42.el7.x86_64.rpm  zabbix.conf.php
[root@cacti zabbix]# cp STKAITI.TTF /usr/share/zabbix/fonts/

`启动服务查看端口开启情况`
[root@cacti zabbix]# systemctl enable zabbix-server
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
[root@cacti zabbix]# systemctl start zabbix-server
[root@cacti zabbix]# netstat -ntap | grep zabbix        #监听端口为10051
tcp        0      0 0.0.0.0:10051           0.0.0.0:*        LISTEN    6735/zabbix_server
tcp6       0      0 :::10051                :::*             LISTEN    6735/zabbix_server
[root@cacti zabbix]# systemctl restart httpd.service    #重启httpd服务,用于验证登录zabbix

验证:登录操作,安装zabbix

第一步:在宿主机地址栏中输入:http://192.168.18.147/zabbix/可进入以下页面,按Next step进入下一步

如何部署Zabbix监控实现监测和报警机制

第二步:确认检查全部为OK之后,按Next step进入下一步

如何部署Zabbix监控实现监测和报警机制

第三步:数据库设置,输入端口号3306,填写密码admin123,按Next step进入下一步

如何部署Zabbix监控实现监测和报警机制

第四步:填写zabbix服务名称,此处填写Zabbix(可自行定义),按Next step进入下一步

如何部署Zabbix监控实现监测和报警机制

第五步:可以显示之前所有配置的内容,直接按Next step进入下一步

如何部署Zabbix监控实现监测和报警机制

第六步:进入页面后直接按Finish结束,进入登陆界面,输入默认账户Admin,默认密码zabbix,点击登录

如何部署Zabbix监控实现监测和报警机制

此时就可以进入到zabbix的监控界面了:

可点击右上角人物头像,在Language语言栏选择Chinese(zh_CN)简体中文,点击Update更新

如何部署Zabbix监控实现监测和报警机制

以上就是监测端的所有操作!


被监测端操作:

[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@localhost ~]# setenforce 0

`安装yum源`
[root@localhost ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
获取http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
警告:/var/tmp/rpm-tmp.elS5cl: 头V4 RSA/SHA512 Signature, 密钥 ID a14fe591: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:zabbix-release-3.5-1.el7         ################################# [100%]

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  zabbix.repo
[root@localhost yum.repos.d]# yum install zabbix-agent -y

`修改配置文件`
[root@localhost yum.repos.d]# grep -n '^'[a-Z] /etc/zabbix/zabbix_agentd.conf
13:PidFile=/var/run/zabbix/zabbix_agentd.pid
32:LogFile=/var/log/zabbix/zabbix_agentd.log
43:LogFileSize=0
98:Server=127.0.0.1             #此处需要修改为监控端IP
139:ServerActive=127.0.0.1      #此处需要修改为监控端IP
150:Hostname=Zabbix server
268:Include=/etc/zabbix/zabbix_agentd.d/*.conf

[root@localhost yum.repos.d]# vim /etc/zabbix/zabbix_agentd.conf
98 Server=192.168.18.147            #98行,指向监控服务器IP
139 ServerActive=192.168.18.147     #139行,指向监控服务器IP
150 Hostname=zhou                   #主机名,可自行定义
#修改完成后按Esc退出插入模式,输入:wq保存退出

`启动服务`
[root@localhost yum.repos.d]# systemctl enable zabbix-agent.service
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@localhost yum.repos.d]# systemctl restart zabbix-agent.service
[root@localhost yum.repos.d]# netstat -ntap | grep zabbix       #监听端口为10050
tcp        0      0 0.0.0.0:10050           0.0.0.0:*         LISTEN   5425/zabbix_agentd
tcp6       0      0 :::10050                :::*              LISTEN   5425/zabbix_agentd

此时不会自动识别被监控端,需要做以下操作:

第一步:找到配置下的主机选项,点击创建主机

如何部署Zabbix监控实现监测和报警机制

第二步:在主机配置界面填入相应内容,然后点击模板

如何部署Zabbix监控实现监测和报警机制

第三步:在模板中选择HTTP和SSH的模板链接,点击提示器中的添加,然后再点击蓝色的添加图标

如何部署Zabbix监控实现监测和报警机制

此时回到开始的界面就会显示新添加的监控项

如何部署Zabbix监控实现监测和报警机制

以上就实现了服务器监控被监控端,假如被监控端遇到问题,就会触发报警,最终会以邮件形式提供(需要添加邮件发送服务)


Zabbix监测和报警机制

监控端安装邮件报警功能的操作
[root@cacti zabbix]# yum install mailx -y
[root@cacti zabbix]# vim /etc/mail.rc
#在末行下插入以下内容
set from=邮箱地址   #例如19919919911@163.com
set smtp=smtp.163.com
set smtp-auth-user=邮箱地址
set smtp-auth-password=邮箱密码
set smtp-auth=login
#修改完成后按Esc退出插入模式,输入:wq保存退出

`尝试发送测试邮件`
[root@cacti zabbix]# echo "hello world" | mail -s "testmail" 邮箱地址
此时邮箱收到测试邮件:

如何部署Zabbix监控实现监测和报警机制

编写发邮件脚本:

[root@cacti zabbix]# cd /usr/lib/zabbix/alertscripts
[root@cacti alertscripts]# vim mail.sh
#!/bin/bash
#send mail

messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 | tr '\r\n' '\n'`
echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1
#修改完成后按Esc退出插入模式,输入:wq保存退出

[root@cacti alertscripts]# mv mail.sh mailx.sh

`在tmp目录下创建mailx的日志文件`
[root@cacti alertscripts]# touch /tmp/mailx.log

`赋予权限`
[root@cacti alertscripts]# chown -R zabbix.zabbix  /tmp/mailx.log
[root@cacti alertscripts]# chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
[root@cacti alertscripts]# chown -R zabbix.zabbix /usr/lib/zabbix/

`验证过程`
[root@cacti alertscripts]# ./mailx.sh 邮箱地址 "yun" "hello"
#其中邮箱地址为$1,yun为$2主题,hello为$3内容

此时执行完脚本,邮箱中就可以收到相对应的邮件了!

如何部署Zabbix监控实现监测和报警机制

接下来进入Web界面进行设置:

第一步:在上方选择管理,找到其中的报警媒介类型,再点击页面右上角的创建媒体类型,在界面中输入相关信息

如何部署Zabbix监控实现监测和报警机制

第二步:选项中会显示3次探测服务,如果宕掉就会触发报警,最后点击下方的蓝色添加图标,就可以生成新的报警类型了

如何部署Zabbix监控实现监测和报警机制


接下来我们需要指定用户

第一步:找到配置中的用户界面,点击Admin用户

如何部署Zabbix监控实现监测和报警机制

第二步:在用户的报警媒介中点击添加,输入相对应的媒介信息,最后点击添加

如何部署Zabbix监控实现监测和报警机制

第三步:添加媒介之后一定不要忘记点击更新

如何部署Zabbix监控实现监测和报警机制

在动作中删除原有模板,在进行重新定义,点击右上角的创建动作

第一步:在动作界面中输入名称,生成新的触发条件

如何部署Zabbix监控实现监测和报警机制

第二步:在操作中做以下操作,下方点击新的,做添加操作,最后点击跟新

如何部署Zabbix监控实现监测和报警机制

此时新的操作生成!

如何部署Zabbix监控实现监测和报警机制

第三步:恢复操作中做以下填写

如何部署Zabbix监控实现监测和报警机制

此时新的操作生成!

如何部署Zabbix监控实现监测和报警机制

第四步:点击蓝色图标添加,此时就会进行持续性的监控了

如何部署Zabbix监控实现监测和报警机制

查看被监控端SSH远程连接服务状态

[root@localhost yum.repos.d]# systemctl status sshd
● sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
   Active: active (running) since 一 2019-11-25 11:00:11 CST; 2 months 7 days ago
#此时显示为running运行状态

`停止此服务`
[root@localhost yum.repos.d]# systemctl stop sshd

此时我们看监控界面会不会跳出提示

经过等待几分钟之后监控界面会自动跳出SSH服务down的提示,此时邮箱也会收到邮件

如何部署Zabbix监控实现监测和报警机制

如何部署Zabbix监控实现监测和报警机制

`启动sshd服务`
[root@localhost yum.repos.d]# systemctl start sshd
此时几分钟过后会自动监测到服务成功开启,报警已解决,同时邮箱也会收到服务恢复的邮件

如何部署Zabbix监控实现监测和报警机制

如何部署Zabbix监控实现监测和报警机制

看完上述内容,你们对Zabbix监控的使用有进一步的了解吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程笔记行业资讯频道,感谢各位的阅读。


推荐阅读
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 深入理解OAuth认证机制
    本文介绍了OAuth认证协议的核心概念及其工作原理。OAuth是一种开放标准,旨在为第三方应用提供安全的用户资源访问授权,同时确保用户的账户信息(如用户名和密码)不会暴露给第三方。 ... [详细]
  • 2023 ARM嵌入式系统全国技术巡讲旨在分享ARM公司在半导体知识产权(IP)领域的最新进展。作为全球领先的IP提供商,ARM在嵌入式处理器市场占据主导地位,其产品广泛应用于90%以上的嵌入式设备中。此次巡讲将邀请来自ARM、飞思卡尔以及华清远见教育集团的行业专家,共同探讨当前嵌入式系统的前沿技术和应用。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • 本文介绍了如何利用JavaScript或jQuery来判断网页中的文本框是否处于焦点状态,以及如何检测鼠标是否悬停在指定的HTML元素上。 ... [详细]
  • This guide provides a comprehensive step-by-step approach to successfully installing the MongoDB PHP driver on XAMPP for macOS, ensuring a smooth and efficient setup process. ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
author-avatar
绝望的贵族_500
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有