phpipam1.7安装部署

0软件说明

phpipam是一个开源Web IP地址管理应用程序(IPAM)

phpipam官网:https://www.phpipam.net/

1安装环境

操作系统:Rocky Linux9.5x86_64

phpipam版本:1.7

php版本:8.0.30

数据库版本:MariaDB10.5.27

不通的phpipam版本对安装环境以及软件的版本要求不一样,有兼容性的问题,这个以实际的情况进行安装,官网文档中有参考

文档编写时间:2025年2月
作者:浅水鲤鱼qianshuiliyu

2安装部署

安装部署可以参考官网的安装文档进行部署,但是在实际的安装环境中,一些配置略有不同,这个需要根据自己的实际环境来实时的进行调整

官网安装文档地址:https://www.phpipam.net/news/phpipam-installation-on-centos-7/

本文档中的配置操作基本全部来自于官网

2.1安装之前的操作

1. 安装之前需要关闭防火墙以及selinux 2. 配置好能够访问的yum源地址(这个通常不需要配置,使用系统默认的就可以,如果访问的慢或者无法访问就需要配置一下,我这里可以正常访问,就不配置了)

说明:如果需要开启防护墙以及selinxu的设置的话,就必须设置对应的放行规则,我这里选择全部关闭,就不要在设置对应的放行规则了

放行规则在安装文档中也有说明,可以去参考官网以及实际的情况来进行设置

selinux关闭,下面的操作可以不设置

2.1.1关闭防火墙以及selinux

1. 关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
  1. 永久关闭selinux

编辑/etc/selinux/config下的配置文件,将SELINUX=enforcing修改为SELINUX=disabled,编辑完毕后重启操作系统生效

vim /etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled

# 设置完毕后,重启操作系统
reboot

2.1.2 yum源的配置

我这里的源访问正常,并且速度稳定,不需要配置,下面展示一下阿里云的配置方法

源相关的文件/etc/yum.repos.d/目录下,需要备份的话,可以先进行一下备份

[root@qianshuiliyu-phpipamHost ~]# ls /etc/yum.repos.d/
rocky-addons.repo  rocky-devel.repo  rocky-extras.repo  rocky.repo
sed -e 's|^mirrorlist=|#mirrorlist=|g' \-e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux|g' \-i.bak \/etc/yum.repos.d/Rocky-*.repodnf makecache
#dnf与yum基本通用,那个命令都可以

2.2语言以及区域设置

这个设置并不是必须的,但是在使用的时候可能会出现一些问题,所以设置了没毛病

在某些情况下,如果系统或应用程序没有正确地识别或设置这些环境变量,可能导致显示乱码或者语言不匹配的问题。通过 /etc/environment 文件设置这些变量可以确保整个系统具有一致的环境配置

[root@qianshuiliyu-phpipamHost ~]# cat /etc/environment 
LC_ALL=zh_CN.utf-8
LANG=zh_CN.utf-8

2.3安装LAMP组件

2.3.1yum安装

Apache, MySQL(这里使用的是mariadb,使用与mysql基本一样), PHP (LAMP)

普通用户执行,请在命令的最前面添加sudo进行执行

当前系统中,dnf执行或者yum都可以,不要纠结这个问题

当然安装还有其他方式,源码安装,docker容器部署等等,只要正确安装了对应版本的Apache, MySQL, PHP 服务即可正确部署,不一定非得说是使用yum来安装,只是说不同的安装方式需要做的安装操作不一样,在使用的时候是看不出来的

yum -y install httpd mariadb-server php php-cli php-gd php-common php-ldap php-pdo php-pear php-snmp php-xml php-mysqlnd php-mbstring git# API中使用加密方法还需要安装下面的包,建议安装
yum -y install epel-release
yum -y install php-mcrypt

2.3.2注意

注意:这个是在我当前Rocky Linux9.5系统中执行的命令,yum安装的时候寻找的是对应的源软件包进行安装,刚好源里面的各个软件包在phpipam1.7x的兼容范围内,才能够成功的安装,但是你不能说是在一个老的系统上如centos7执行了相关的命令后,出现各种问题然后找不到问题

每个phpipam系列的版本对应的php版本范围,不能乱安装,有兼容性的要求

2.3.3问题

这里安装有一个问题,官网中的命令目前没有修改,在PHP 7.4 及以上的版本中,MySQL 扩展已经变为为 php-mysqlnd 而不是 php-mysql,使用php-mysql会找不到对应的包,所以在安装的时候使用php-mysqlnd

2.4apache配置

修改apache中的/var/www/html的目录设置,允许mod_rewrite对url的重写,同时设置ServerName

2.4.1修改/var/www/html目录设置

<Directory "/var/www/html">Options FollowSymLinksAllowOverride allOrder allow,denyAllow from all
</Directory>

2.4.2设置ServerName

ServerName 192.168.2.100:80

2.4.3时区设置

root@qianshuiliyu-phpipamHost ~]# cat -n /etc/php.ini |grep date.timezone931	; http://php.net/date.timezone932	;date.timezone =933	date.timezone = Asia/Shanghai
[root@qianshuiliyu-phpipamHost ~]# 

2.4.4启动apache服务

启动apache服务并设置为开机自启
systemctl start httpd && systemctl enable httpd

2.5数据库配置

2.5.1启动数据库

启动数据库并设置开机自启
systemctl start mariadb && systemctl enable mariadb

2.5.2数据库初始设置

通过mysql_secure_installation进行安全配置向导
  1. 为root用户设置密码
  2. 删除匿名账号
  3. 取消root用户远程登录
  4. 删除test库和对test库的访问权限
  5. 刷新授权表使修改生效

第一次使用,没有设置root用户的密码(这里的root是数据库的账号root,不是操作系统的),直接回车,

[root@qianshuiliyu-phpipamHost ~]# mysql_secure_installationNOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDBSERVERS 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
haven't set the root password yet, you should just press enter here.Enter current password for root (enter for none): 
#第一次使用,没有设置数据库root用户的密码(这里的root是数据库的账号root,不是操作系统的),直接回车即可,再次登录就需要密码了
# 如果未设置密码或通过操作系统凭据登录(如启用 unix_socket 认证),则可能不需要输入密码
OK, successfully used password, moving on...Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.You already have your root account protected, so you can safely answer 'n'.
# root用户启用unix_socket认证
Switch to unix_socket authentication [Y/n] y
Enabled successfully!
Reloading privilege tables..... Success!You already have your root account protected, so you can safely answer 'n'.
# 设置root用户的密码
Change the root password? [Y/n] y
New password: 
Re-enter new password: 
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] y... Success!Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.
# 输入n允许root远程登录,y拒绝root远程登录
Disallow root login remotely? [Y/n] n... skipping.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] y- Dropping test database...... Success!- Removing privileges on test database...... Success!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!

2.5.3说明

这里不需要进入到数据库中去创建对应的phpipam用户以及数据库。在后面部署的时候会自动创建,设置完安全配置向导就完毕了

2.6源码下载部署

2.6.1说明

github上的源码地址:https://github.com/phpipam/phpipam.git

源码地址在github上,不一定能够访问,没有关系,使用国内的平台git也可以访问,一般都有克隆地址

我的蓝奏云地址:https://wwrp.lanzout.com/idA0m2nlo9je

蓝奏云地址的说明:蓝奏云上存储的是1.7,当前部署的这个版本,这个直接将压缩包中的内容解压到/var/www/html目录即可,相当于是通过git下载了源码,如果是通过git直接下载的源码,可以参考官网进行相应的部署

说明:

部署访问的方式有两种,第一种是http://ip直接访问,第二种是http://ip/phpipam/方式访问

这两种方式,

第一种是源码里面的内容直接放在/var/www/html文件中,没有使用phpipam目录

第二种则是在/var/www/html目录下创建了一个phpipam目录,部署在这个目录中,如果是这种部署方式,那么就需要修改config.php文件,第一种方式则不需要,我这里使用的是第一种部署方式

2.6.2源码上传到/var/www/html目录

将phpipam1.7的源码信息上传到/var/www/html目录中,上传步骤这里省略

如果是通过git可以直接下载到/var/www/html目录中,官网文档中有说明

2.6.3解压压缩包

[root@qianshuiliyu-phpipamHost html]# unzip phpipam-1.7.zi

2.6.4源码信息复制到/var/www/html

源码信息复制到/var/www/html,不使用下面的phpipam的目录
[root@qianshuiliyu-phpipamHost html]# ls
phpipam-1.7  phpipam-1.7.zip
[root@qianshuiliyu-phpipamHost html]# cd phpipam-1.7/
[root@qianshuiliyu-phpipamHost phpipam-1.7]# mv * ../
[root@qianshuiliyu-phpipamHost phpipam-1.7]# cd ..
[root@qianshuiliyu-phpipamHost html]# ls
api  config.dist.php    css  doc        index.php  INSTALL.txt  misc         phpipam-1.7.zip  robots.txt   UPDATE
app  config.docker.php  db   functions  install    js           phpipam-1.7  README.md        SECURITY.md  upgrade

2.6.5数据库配置文件设置

这里直接重新命名一下就可以了
[root@qianshuiliyu-phpipamHost html]# cp config.dist.php config.php

如果使用http://ip/phpipam/访问的,不仅要重新命名,还需要修改config.php配置文件,我这里不需要修改

2.7phpipam的web配置

剩下的部署通过web完成,直接输入对应的ip访问

http://192.168.2.100

2.7.1问题-缺少gmp扩展,

在访问的时候出现提示缺少gmp的扩展,安装对应的扩展解决

[root@qianshuiliyu-phpipamHost html]# yum -y install php-gmp

安装完毕后再次访问:

2.7.2新的phpipam安装

2.7.3自动安装数据库

2.7.4数据库配置

到这里就已经结束了,可以直接访问了,输入http://192.168.2.100,

默认用户/密码:Admin/ipamadmin

但是下面你还有一个连接数据库让你进行一些设置,这个设置不设置都可以,不设置后续也能通过设置来进行调整,这个不重要

如果设置,选择连接

Admin用户的密码设置,这里设置,默认的密码则会失效

设置完毕后选择登录,或者直接在地址栏中重新输入ip进行访问

2.8访问

输入地址:http://192.168.2.100

输入用户以及密码进行访问

默认用户/密码:Admin/ipamadmin,如果没设置密码使用此密码访问

到这里安装结束

3设置相关

3.1禁用安装脚本

安装完毕后,在访问的时候会弹出下面的提示

将$disable_installer = falus;修改为$disable_installer = ture;即可解决

[root@qianshuiliyu-phpipamHost html]# cat -n config.php|grep disable_installer6	$disable_installer = ture;

3.2中文设置

登录之后,选择Administrator–Users

注销用户后,重新登录

没有变化重新关开浏览器或者清空缓存再次尝试

3.3机柜中文乱码问题

机柜中文乱码是因为phpipam的源码中没有中文字体,上传中文字体道对应的目录即可解决

我这里将windows中的字体复制进去

windows的字体控制面板中,在控制面板–>所有控制面板项–>字体

找到黑体字体进行上传

字体目录:

[root@qianshuiliyu-phpipamHost fonts]# pwd
/var/www/html/css/fonts
[root@qianshuiliyu-phpipamHost fonts]# ls
fa-brands-400.eot   fa-brands-400.woff2  fa-regular-400.woff   fa-solid-900.ttf    fontawesome-webfont.eot   fontawesome-webfont.woff2
fa-brands-400.svg   fa-regular-400.eot   fa-regular-400.woff2  fa-solid-900.woff   fontawesome-webfont.svg   MesloLGS-Regular.ttf
fa-brands-400.ttf   fa-regular-400.svg   fa-solid-900.eot      fa-solid-900.woff2  fontawesome-webfont.ttf   source_sans_pro
fa-brands-400.woff  fa-regular-400.ttf   fa-solid-900.svg      FontAwesome.otf     fontawesome-webfont.woff

phpipam的默认字体是MesloLGS-Regular.ttf字体,这个在下面配置文件中可以查看到

var/www/html/functions/classes/class.Rackspace.php配置文件中查看

那么我们在进行字体上的修改就有两重方式吗

  1. 将配置文件中的字体修改位黑体名字(这个可能需要修改多处)
  2. 将字体名字修改位原来的字体名字,原来的字体名字可以重新命名(推荐使用这种方式)
[root@qianshuiliyu-phpipamHost html]# cd css/fonts/
[root@qianshuiliyu-phpipamHost fonts]# ls
fa-brands-400.eot   fa-brands-400.woff2  fa-regular-400.woff   fa-solid-900.ttf    fontawesome-webfont.eot   fontawesome-webfont.woff2
fa-brands-400.svg   fa-regular-400.eot   fa-regular-400.woff2  fa-solid-900.woff   fontawesome-webfont.svg   MesloLGS-Regular.ttf
fa-brands-400.ttf   fa-regular-400.svg   fa-solid-900.eot      fa-solid-900.woff2  fontawesome-webfont.ttf   SIMHEI.TTF
fa-brands-400.woff  fa-regular-400.ttf   fa-solid-900.svg      FontAwesome.otf     fontawesome-webfont.woff  source_sans_pro
[root@qianshuiliyu-phpipamHost fonts]# mv MesloLGS-Regular.ttf MesloLGS-Regular.ttf.bak 
[root@qianshuiliyu-phpipamHost fonts]# mv SIMHEI.TTF MesloLGS-Regular.ttf
[root@qianshuiliyu-phpipamHost fonts]# ls
fa-brands-400.eot   fa-brands-400.woff2  fa-regular-400.woff   fa-solid-900.ttf    fontawesome-webfont.eot   fontawesome-webfont.woff2
fa-brands-400.svg   fa-regular-400.eot   fa-regular-400.woff2  fa-solid-900.woff   fontawesome-webfont.svg   MesloLGS-Regular.ttf
fa-brands-400.ttf   fa-regular-400.svg   fa-solid-900.eot      fa-solid-900.woff2  fontawesome-webfont.ttf   MesloLGS-Regular.ttf.bak
fa-brands-400.woff  fa-regular-400.ttf   fa-solid-900.svg      FontAwesome.otf     fontawesome-webfont.woff  source_sans_pro
[root@qianshuiliyu-phpipamHost fonts]# 

此时在刷新页面,中文名正常,乱码解决,不需要重启服务

3.4html中文语言修改

默认的网页语言是英文的

在站点目录的index.php中进行配置

3.5登录界面的中文修改

设置完语言之后,发现登录界面并没有变为中文,这个需要手动修改一下源码文件中对应的内容

修改源码文件你得需要明白是什么意思,知道在哪里修改,如果不会的话不要轻易修改

在/var/www/html/app/login目录中的login_form.php进行设置,将里面原有的英文提示修改为中文

修改完之后刷新页面进行查看

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/17708.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

「vue3-element-admin」Vue3 + TypeScript 项目整合 Animate.css 动画效果实战指南

&#x1f680; 作者主页&#xff1a; 有来技术 &#x1f525; 开源项目&#xff1a; youlai-mall ︱vue3-element-admin︱youlai-boot︱vue-uniapp-template &#x1f33a; 仓库主页&#xff1a; GitCode︱ Gitee ︱ Github &#x1f496; 欢迎点赞 &#x1f44d; 收藏 ⭐评论 …

LabVIEW用户界面(UI)和用户体验(UX)设计

作为一名 LabVIEW 开发者&#xff0c;满足功能需求、保障使用便捷与灵活只是基础要求。在如今这个用户体验至上的时代&#xff0c;为 LabVIEW 应用程序设计直观且具有美学感的界面&#xff0c;同样是不容忽视的关键任务。一个优秀的界面设计&#xff0c;不仅能提升用户对程序的…

AWTK-WEB 快速入门(4) - JS Http 应用程序

XMLHttpRequest 改变了 Web 应用程序与服务器交换数据的方式&#xff0c;fetch 是 XMLHttpRequest 继任者&#xff0c;具有更简洁的语法和更好的 Promise 集成。本文介绍一下如何使用 JS 语言开发 AWTK-WEB 应用程序&#xff0c;并用 fetch 访问远程数据。 用 AWTK Designer 新…

餐饮油烟在线监测仪,守护蓝天的隐形卫士

在城市化的快速发展中&#xff0c;餐饮业作为人们日常生活不可或缺的一部分&#xff0c;带来了便捷与美味的同时&#xff0c;也产生了大量餐饮油烟污染问题。据研究表明&#xff0c;长期暴露于高浓度油烟环境中不仅影响人体健康&#xff0c;还对空气质量造成严重破坏。为了有效…

从Sora到有言:3D视频生成技术的突破与应用

近年来&#xff0c;AIGC领域飞速发展&#xff0c;这个词也越来越高频地出现在了大家的生活中。AIGC 能完成的任务也越来越多&#xff0c;大模型的能力飞速增长 —— 从Deepseek生成文字&#xff0c;到StableDiffusion生成图像&#xff0c;再到Sora可以生成视频。 而现在&#x…

xiao单栏/网格布局typecho主题模板源码

源码介绍 xiao单栏/网格布局typecho主题模板源码 一款基于 bootstrap5.3.3 开发的 typecho 单栏主题 效果预览 源码获取 xiao单栏/网格布局typecho主题模板源码

如何运用边缘计算控制器提升智能工厂的竞争力?

制造业正经历一场深刻的变革。其中&#xff0c;边缘计算作为一项关键技术&#xff0c;在提升生产效率、降低成本以及实现智能制造方面发挥着至关重要的作用。本文将探讨边缘计算在智能工厂中的应用场景及其带来的价值。 边缘计算简介 边缘计算是一种分布式计算范式&#xff0…

今日学习总结

复习了dfs的相关内容&#xff0c;完成了一道dfs相关的题目。 P2371挑战算周长 #include <stdio.h> // 定义一个二维字符数组 map 用于存储地图信息&#xff0c;大小为 25x25 char map[25][25]; // 定义一个常量二维数组 d 作为方向增量数组&#xff0c;用于表示 8 个不同…

SpringMVC学习使用

一、SpringMVC简单理解 1.1 Spring与Web环境集成 1.1.1 ApplicationContext应用上下文获取方式 应用上下文对象是通过new ClasspathXmlApplicationContext(spring配置文件) 方式获取的&#xff0c;但是每次从容器中获得Bean时都要编写new ClasspathXmlApplicationContext(sp…

HCIA项目实践---OSPF的知识和原理总结

9.5 OSPF 9.5.1 从哪些角度评判一个动态路由协议的好坏&#xff1f; &#xff08;1&#xff09;选路佳&#xff08;是否会出环&#xff09; OSPF 协议采用链路状态算法&#xff0c;通过收集网络拓扑信息来计算最短路径&#xff0c;从根本上避免了路由环路的产生。 &#xff08…

算法题(67):最长连续序列

审题&#xff1a; 需要我们在O&#xff08;n&#xff09;的时间复杂度下找到最长的连续序列长度 思路&#xff1a; 我们可以用两层for循环&#xff1a; 第一层是依次对每个数据遍历&#xff0c;让他们当序列的首元素。 第二层是访问除了该元素的其他元素 但是此时时间复杂度来到…

2021年全国研究生数学建模竞赛华为杯E题信号干扰下的超宽带(UWB)精确定位问题求解全过程文档及程序

2021年全国研究生数学建模竞赛华为杯 E题 信号干扰下的超宽带(UWB)精确定位问题 原题再现&#xff1a; 一、背景   UWB&#xff08;Ultra-Wideband&#xff09;技术也被称之为“超宽带”&#xff0c;又称之为脉冲无线电技术。这是一种无需任何载波&#xff0c;通过发送纳秒…

Vue3折线图,柱状图,饼图,各种图表,适用于所有全平台

开发工具&#xff1a;HBuilderX编译器&#xff0c;uniapp&#xff0c;Vue3&#xff1b; 目标&#xff1a;全平台适用&#xff0c;Web端&#xff0c;小程序端&#xff0c;Android端&#xff0c;ios端&#xff0c;快应用等所有平台&#xff0c;鸿蒙app&#xff0c;前端&#xff…

联想电脑如何进入BIOS?

打开设置 下滑找到更新与安全 点击恢复和立即重新启动 选择疑难解答 选择UEFI固件设置 然后如果有重启点击重启 重启开机时一直点击FNF10进入BIOS界面

ICIR2025 | CubeDiff:重新利用基于扩散的图像模型来生成360°全景图

CubeDiff是一种使用基于扩散的图像模型生成 360 全景图的新型框架。通过利用立方体图表示和微调预训练的文本到图像模型&#xff0c;CubeDiff 简化了全景图生成过程&#xff0c;提供了高质量、一致的全景图。 CubeDiff 利用立方体图来表示 360 全景图&#xff0c;并在一次传递中…

YOLO11网络结构以及改进1

YOLO11 1.YOLO11网络结构图在哪里&#xff1f;2.对应的网络结构图3.每一个模块详解3.1 Conv模块3.2关于卷积模块3.3 关于给各个模块指定参数的细节 4.加入CBAM 1.YOLO11网络结构图在哪里&#xff1f; 2.对应的网络结构图 3.每一个模块详解 3.1 Conv模块 位置&#xff1a;ultr…

兔兔答题应用于微信考试、付费考试、社会调查问卷、明星知识问答、员工培训考核、模拟自测、企业面试、试题库等多种场景。

“兔兔答题系统”是一个面向教育、培训和在线测评场景的智能化答题平台&#xff08;兔兔答题官网地址&#xff09;。其设计目标是帮助用户高效完成题目练习、考试组织及学习效果分析&#xff0c;通常具备以下核心功能和特色&#xff1a; 一、核心功能 题库管理 支持多题型录入&…

网络安全防范

实践内容 学习总结 PDR&#xff0c;$$P^2$$DR安全模型。 防火墙&#xff08;Firewall&#xff09;&#xff1a; 网络访问控制机制&#xff0c;布置在网际间通信的唯一通道上。 不足&#xff1a;无法防护内部威胁&#xff0c;无法阻止非网络传播形式的病毒&#xff0c;安全策略…

Java 设计模式之组合模式

文章目录 Java 设计模式之组合模式概述UML代码实现 Java 设计模式之组合模式 概述 组合模式(Composite)&#xff1a;将对象组合成树形结构以表示’部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。优点&#xff1a;客户端可以统一处理单个对象…

基于VS2022在Windows上首次尝试开发C++ gRPC服务端和客户端的详细步骤

文章目录 **1. 创建解决方案与项目****2. 编写proto文件****3. 生成gRPC代码****4. 配置项目属性****服务端项目&#xff08;gRPCServer&#xff09;****客户端项目&#xff08;gRPCClient&#xff09;** **5. 实现服务端代码****6. 实现客户端代码****7. 编译与运行****注意事…