Linux系统之安装OneNav个人书签管理器

Linux系统之安装OneNav个人书签管理器

  • 一、OneNav介绍
    • 1.OneNav简介
    • 2.OneNav特点
  • 二、本地环境介绍
    • 2.1 本地环境规划
    • 2.2 本次实践介绍
  • 三、检查本地环境
    • 3.1 检查本地操作系统版本
    • 3.2 检查系统内核版本
    • 3.3 检查本地yum仓库状态
  • 四、安装httpd服务
    • 4.1 安装httpd
    • 4.2 启动httpd服务
    • 4.3 设置防火墙和selinux
    • 4.4 测试httpd服务
  • 五、安装SQLite3
    • 5.1 安装SQLite3
    • 5.2 检查SQLite3版本
  • 六、安装php服务
    • 6.1 安装remi的yum源
    • 6.2 安装php工具
    • 6.3 编辑info.php测试文件
    • 6.3 重启hhtpd服务
    • 6.4 查看php安装状态
  • 七、安装OneNav
    • 7.1 下载OneNav源码包
    • 7.2 设置目录权限
    • 7.3 重启httpd服务
  • 八、访问OneNav后台
    • 8.1 设置登录密码
    • 8.2 登录OneNav后台
  • 九、添加自定义网址
    • 9.1 添加网址
    • 9.2 访问前台页面
    • 9.3 测试访问添加网址

一、OneNav介绍

1.OneNav简介

OneNav是一款使用PHP + SQLite 3开发的导航/书签管理器,支持Material Design风格,界面简洁,使用方便。

2.OneNav特点

  • 支持后台管理
  • 支持私有链接
  • 支持多种主题风格(默认内置2套模板)
  • 支持链接信息自动识别
  • 支持API
  • 支持右键菜单管理

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

hostnameIP地址操作系统版本内核版本PHP版本
jeven192.168.3.166centos 7.63.10.0-957.el7.x86_647.4.33

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境;
2.在centos7.6环境下部署OneNav个人书签管理器。

三、检查本地环境

3.1 检查本地操作系统版本

检查本地操作系统版本

[root@jeven ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 

3.2 检查系统内核版本

检查系统内核版本

[root@jeven ~]# uname -r 
3.10.0-957.el7.x86_64

3.3 检查本地yum仓库状态

  • 配置阿里云的镜像源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
  • 检查本地yum仓库状态
[root@jeven yum.repos.d]# yum repolist all |grep  enable 
base/7/x86_64         CentOS-7 - Base - mirrors.aliyun.com       enabled: 10,072
extras/7/x86_64       CentOS-7 - Extras - mirrors.aliyun.com     enabled:    515
updates/7/x86_64      CentOS-7 - Updates - mirrors.aliyun.com    enabled:  4,996

四、安装httpd服务

4.1 安装httpd

使用使用yum安装httpd

yum install   httpd -y

在这里插入图片描述

4.2 启动httpd服务

  • 启动httpd服务并使开机自启
systemctl enable --now httpd
  • 检查httpd服务状态
[root@jeven ~]# systemctl status httpd
● httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)Active: active (running) since Tue 2023-08-22 20:02:24 CST; 6s agoDocs: man:httpd(8)man:apachectl(8)Main PID: 21710 (httpd)Status: "Processing requests..."Tasks: 6Memory: 2.9MCGroup: /system.slice/httpd.service├─21710 /usr/sbin/httpd -DFOREGROUND├─21711 /usr/sbin/httpd -DFOREGROUND├─21712 /usr/sbin/httpd -DFOREGROUND├─21713 /usr/sbin/httpd -DFOREGROUND├─21714 /usr/sbin/httpd -DFOREGROUND└─21715 /usr/sbin/httpd -DFOREGROUNDAug 22 20:02:24 jeven systemd[1]: Starting The Apache HTTP Server...
Aug 22 20:02:24 jeven systemd[1]: Started The Apache HTTP Server.

4.3 设置防火墙和selinux

  • 防火墙设置,关闭防火墙。
systemctl stop firewalld && systemctl disable firewalld  
  • 防火墙设置,当需要开启防火墙的时候,可以放行80端口。
 firewall-cmd --zone=public  --permanent --add-port=80/tcpfirewall-cmd --reload
  • 关闭selinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
getenforce 

4.4 测试httpd服务

在本地浏览器,访问http://192.168.3.166/,实际请将IP替换为自己服务器的IP地址。
网站内容可以正常打开,表示httpd服务是正常的。

在这里插入图片描述

五、安装SQLite3

5.1 安装SQLite3

使用yum安装SQLite3

sudo yum install sqlite sqlite-devel

5.2 检查SQLite3版本

检查SQLite3版本

[root@jeven ~]# sqlite3 --version
3.7.17 2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668

六、安装php服务

6.1 安装remi的yum源

安装remi的yum源

yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

6.2 安装php工具

直接yum安装php7.4版本及其模块组件。

yum install -y --showduplicate --enablerepo=remi --enablerepo=remi-php74   php-fpm php  php-cli  php-bcmathphp-gd  php-json  php-mbstring  php-mcrypt  php-mysqlnd php-opcache  php-pdo  php-pecl-crypto  php-pecl-mcrypt php-pecl-geoip php-recode php-snmp  php-soap  php-xml  php-pecl-zip

在这里插入图片描述

6.3 编辑info.php测试文件

编辑info.php测试文件

[root@jeven ~]# cat /var/www/html/info.php 
<?php
phpinfo();
?>

6.3 重启hhtpd服务

重启hhtpd服务

systemctl restart httpd

6.4 查看php安装状态

在浏览器,http://192.168.3.166/info.php,将IP地址替换为自己服务器IP地址。
出现以下页面,表示php安装正常。

在这里插入图片描述

七、安装OneNav

7.1 下载OneNav源码包

  • 下载OneNav源码包
git clone https://github.com/helloxz/onenav.git
  • 复制OneNav内容到/var/www/html/
cp -r ./onenav/* /var/www/html/

7.2 设置目录权限

设置网站目录权限

chown -R apache:apache /var/www/html/

7.3 重启httpd服务

再次重启httpd服务

systemctl restart httpd

八、访问OneNav后台

8.1 设置登录密码

访问地址:http://192.168.3.166/,将IP地址替换为自己服务器IP地址。
自定义设置用户名密码,这里设置admin账号。

在这里插入图片描述

8.2 登录OneNav后台

访问地址:http://192.168.3.166/index.php?c=login
将以上访问地址替换为自己服务器地址,填写自己设置的用户名密码。

在这里插入图片描述
在这里插入图片描述

九、添加自定义网址

9.1 添加网址

在后台管理页面,链接管理中,选择添加链接。
填写网址信息

在这里插入图片描述

9.2 访问前台页面

访问前台页面:http://192.168.3.166/
将IP地址替换为自己服务器的IP地址

在这里插入图片描述

9.3 测试访问添加网址

打开刚才添加的网址,正常打开网址,表示部署成功。

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

低代码开发ERP:精打细算,聚焦核心投入

企业数字化转型已经成为现代商业环境中的一项关键任务。如今&#xff0c;企业面临着日益激烈的竞争和不断变化的市场需求。在这样的背景下&#xff0c;数字化转型不仅是企业生存的必然选择&#xff0c;也是取得竞争优势和实现可持续发展的关键因素。 在数字化转型的过程中&…

神经网络入门

前言 本文主要介绍最基础的神经网络&#xff0c;包括其结构&#xff0c;学习方法&#xff0c; C \texttt{C} C 的实现代码。 Python \texttt{Python} Python 的代码可以搜索互联网得到。 前排提示&#xff1a;本人涉及一丁点数学知识。 神经网络的结构 神经网络包括多个层…

[Linux]进程概念

[Linux]进程概念 文章目录 [Linux]进程概念进程的定义进程和程序的关系Linux下查看进程Linux下通过系统调用获取进程标示符Linux下通过系统调用创建进程-fork函数使用 进程的定义 进程是程序的一个执行实例&#xff0c;是担当分配系统资源&#xff08;CPU时间&#xff0c;内存…

二、数学建模之整数规划篇

1.定义 2.例题 3.使用软件及解题 一、定义 1.整数规划&#xff08;Integer Programming&#xff0c;简称IP&#xff09;&#xff1a;是一种数学优化问题&#xff0c;它是线性规划&#xff08;Linear Programming&#xff0c;简称LP&#xff09;的一个扩展形式。在线性规划中&…

构造不包含字母和数字的webshell

文章目录 利用不含字母与数字进行绕过知识介绍题目方法一&#xff1a;异或操作绕过方法二&#xff1a;取反进行绕过 过滤不是很严格的情况进阶绕过利用php7特性直接绕过 利用不含字母与数字进行绕过 知识介绍 <?phpecho "A"^"";?>从运行结果为! …

深度学习|CNN卷积神经网络

CNN卷积神经网络 解决的问题人类的视觉原理原理卷积层——提取特征池化层——数据降维全连接层——输出结果 应用图像处理自然语言处理 解决的问题 在CNN没有出现前&#xff0c;图像对人工智能来说非常难处理。 主要原因&#xff1a; 图像要处理的数据量太大了。图像由像素组…

使用IDEA把Java程序打包成jar

点击左上角File,选择Project Structure 左侧选中Artifacts,点击右侧的号 选择JAR->From modules with dependencies 选择你要运行的main方法所在的类,选好了点击OK Artifacts添加完成后点击右下角OK 在工具栏中找到Build,选择Build Artifacts 刚才创建好的Artifacts,选择Bui…

【附安装包】Midas Civil2019安装教程

软件下载 软件&#xff1a;Midas Civil版本&#xff1a;2019语言&#xff1a;简体中文大小&#xff1a;868.36M安装环境&#xff1a;Win11/Win10/Win8/Win7硬件要求&#xff1a;CPU2.5GHz 内存4G(或更高&#xff09;下载通道①百度网盘丨64位下载链接&#xff1a;https://pan.…

Java设计模式-抽象工厂模式

简介 设计模式是软件设计中的一种常见方法&#xff0c;通过定义一系列通用的解决方案&#xff0c;来解决常见的软件设计问题。其中&#xff0c;抽象工厂模式是一种非常常见的设计模式&#xff0c;它可以帮助我们创建一组相关的对象&#xff0c;而不需要指定具体的实现方式。 …

大数据平台是什么意思?有什么用?一般包含哪些模块?

大数据时代&#xff0c;还有很多人不知道大数据平台是什么意思&#xff1f;有什么用&#xff1f;一般包含哪些模块&#xff1f;今天我们就一起来简单了解一下吧&#xff01;仅供参考哦&#xff01; 大数据平台是什么意思&#xff1f;有什么用&#xff1f;一般包含哪些模块&am…

Spring框架中JavaBean的生命周期及单例模式与多列模式

Spring框架中JavaBean的生命周期及单例模式与多列模式 1. Spring框架中JavaBean的管理过程1.1 #定义Bean1.2 Bean的实例化1.3 属性注入1.4 初始化方法1.5 Bean的使用和引用1.6 销毁方法 2. 单例模式与原型模式在JavaBean管理中的应用1.在Spring管理JavaBean的过程中&#xff0c…

Kafka 集群搭建过程

前言 跟着尚硅谷海哥文档搭建的Kafka集群环境&#xff0c;在此记录一下&#xff0c;侵删 注意&#xff1a;博主在服务器上搭建环境的时候使用的是一个服务器&#xff0c;所以这篇博客可能会出现一些xsync分发到其他服务器时候的错误&#xff0c;如果你在搭建的过程中出现了错…

一种pug与html相互转换的工具

有时候看pug很不方便&#xff0c;这个语言虽然简洁&#xff0c;但可读性与维护性较差&#xff0c;所以需要进行转换&#xff0c;这个是win工具&#xff0c;比较方便。 这个工具的下载地址如下&#xff1a; https://download.csdn.net/download/qq_40032778/88244980 解压后如下…

【Azure API 管理】APIM如何实现对部分固定IP进行访问次数限制呢?如60秒10次请求

问题描述 使用Azure API Management, 想对一些固定的IP地址进行访问次数的限制&#xff0c;如被限制的IP地址一分钟可以访问10次&#xff0c;而不被限制的IP地址则可以无限访问&#xff1f; ChatGPT 解答 最近ChatGPT爆火&#xff0c;所以也把这个问题让ChatGPT来解答&#x…

算法通关村十二关 | 字符串经典题目

字符串问题&#xff0c;大家记得模板思路即可&#xff0c;一个类型的题目有很多种。 1. 字符串反转的问题 1.1 反转字符串 题目&#xff1a;LeetCode344: 思路 还是我们常见的双指针问题&#xff0c; left字符数组头部指针&#xff0c;right字符数组尾部指针。当left < r…

Blazor 依赖注入妙用:巧设回调

文章目录 前言依赖注入特性需求解决方案示意图 前言 依赖注入我之前写过一篇文章&#xff0c;没看过的可以看看这个。 C# Blazor 学习笔记(10):依赖注入 依赖注入特性 只能Razor组件中注入所有Razor组件在作用域注入的都是同一个依赖。作用域可以看看我之前的文章。 需求 …

【实例分割】(一)Mask R-CNN详细介绍带python代码

目录 1.&#x1f340;&#x1f340;实例分割定义 2.&#x1f340;&#x1f340;Mask R-CNN 3.&#x1f340;&#x1f340;经典的实例分割算法 4.&#x1f340;&#x1f340;Mask R-CNN python代码 整理不易&#xff0c;欢迎一键三连&#xff01;&#xff01;&#xff01;…

C++ vector

前言&#xff1a; vector的部分源码&#xff1a; &#xff08;做过删除&#xff0c;留下关键信息&#xff09; vector的使用 构造函数&#xff1a; 1 无参构造 vector<int> v1; 2 构造并初始化n个val vector<int> v2(5,1);3 拷贝构造 vector<int> v3…

4-4 Representing text Exercise

本文所用资料下载 一. Representing text Let’s load Jane Austen’s Pride and Prejudice. We first split our text into a list of lines and pick an arbitrary line to focus on: with open(D:jane-austen/1342-0.txt, encodingutf8) as f:text f.read() lines text.…

继承(C++)

继承 一、初识继承概念“登场”语法格式 继承方式九种继承方式组合小结&#xff08;对九种组合解释&#xff09; 二、继承的特性赋值转换 一一 切片 / 切割作用域 一一 隐藏 / 重定义 三、派生类的默认成员函数派生类的默认成员函数1. 构造函数2. 拷贝构造3. 赋值运算符重载4. …