LinuxShell编程2——shell搭建Discuzz论坛网站

目录

一、环境准备

①准备一台虚拟机

②初始化虚拟机

1、关闭防火墙

2、关闭selinux

3、配置yum源

4、修改主机名

 二、搭建LAMP环境

①安装httpd(阿帕奇apache)服务器

查看是否安装过httpd

启动httpd

设置开机启动

查看状态

安装网络工具

测试

②安装mysql5.7

下载mysql安装包

使用MobaXterm软件将mysql5.7的包上传到服务器

安装mysql

启动mysql

查看mysql的临时密码

​编辑

登录mysql改密码

创建discuz数据库用于存储discuz的数据

③安装php

下载

查看yum仓库

启用php80的yum源

安装php80

启动php

测试

注意要重启apache

④部署discuz论坛

下载安装包

上传软件包

解压安装包

拷贝discuz相关的文件到/var/www/html/

重启apache服务

打开网页安装论坛


什么是LAMP ?

LAMP是一个架构的组合

LAMP=Linux+Apache+Mysql+PHP

LNMP=Linux+Nginx+Mysql+php

Apache:是世界使用排名第一的Web服务器软件

php:一种专门用于Web开发的编程语言

Mysql:关系型数据库的管理系统,用于存储结构化的数据

一、环境准备

①准备一台虚拟机

192.168.50.166

②初始化虚拟机

1、关闭防火墙

2、关闭selinux

进里面修改SELINUX=disabled

3、配置yum源

配置阿里云的centos源和 epel源

#curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

#curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo

# yum clean all

# yum makecache fast

4、修改主机名

# hostnamectl set-hostname discuz

 二、搭建LAMP环境

AMP的关系

①安装httpd(阿帕奇apache)服务器

查看是否安装过httpd

# rpm -qa |grep httpd

# yum -y install httpd

启动httpd

# systemctl start httpd

设置开机启动

# systemctl enable httpd

查看状态

# systemctl status httpd

安装网络工具

# yum -y install net-tools
# netstat -tunlp |grep 80

测试

# echo "welecome  to  Apache" > /var/www/html/index.html
# systemctl restart httpd
# curl 192.168.50.166(自己的IP地址)

②安装mysql5.7

下载mysql安装包

使用MobaXterm软件将mysql5.7的包上传到服务器

(需要mysql安装包和MobaXterm软件压缩包的小伙伴们可call我,发你们哇!😄)

安装mysql

安装mysql的rpm包它是有依赖关系的,所以安装是有先后顺序的
过虑你的服务器是否有Mysql
# rpm -qa |grep mysql
# rpm -qa |grep mariadb

# rpm -e mariadb-libs-5.5.68-1.el7.x86_64  --nodeps
# rpm -qa |grep mariadb

 必须按照以下顺序安装,它们有依赖关系

# rpm -ivh mysql-community-common-5.7.40-1.el7.x86_64.rpm

# rpm -ivh mysql-community-libs-5.7.40-1.el7.x86_64.rpm

# rpm -ivh mysql-community-libs-compat-5.7.40-1.el7.x86_64.rpm

# rpm -ivh mysql-community-client-5.7.40-1.el7.x86_64.rpm

# rpm -ivh mysql-community-server-5.7.40-1.el7.x86_64.rpm

启动mysql

# systemctl start mysqld

# systemctl status mysqld

# netstat -tunlp |grep 3306

查看mysql的临时密码

# grep 'temporary password' /var/log/mysqld.log

登录mysql改密码

# mysql -uroot -p'G0Ea,VzsT_4D'

-u是指用户登录

-p是指定密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

刷新权限

mysql> flush privileges;

mysql> exit

创建discuz数据库用于存储discuz的数据

# mysql -uroot -p'MyNewPass4!'
mysql>  create database discuz;
mysql> exit

③安装php

PHP: Hypertext Preprocessor

  1. 配置php的yum源
  2. 安装php
  3. 启动php
  4. 测试

配置阿里云的remi源

阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区

下载

# wget https://mirrors.aliyun.com/remi/enterprise/remi-release-7.rpm

# rpm -ivh remi-release-7.rpm

# yum -y install epel-release

# rpm -ivh remi-release-7.rpm

查看yum仓库

# ls /etc/yum.repos.d/

# yum clean all  

# yum makecache fast

启用php80的yum源

# yum -y install yum-utils
# yum-config-manager --enable remi-php80

安装php80

# yum -y install  php80 php80-php php80-php-xml php80-php-xmlrpc php80-php-pecl-mcrypt php80-php-fpm php80-php-pecl-apcu php80-php-mbstring php80-php-gd php80-php-json php80-php-pecl-json-post php80-php-pdo php80-php-mysqlnd php80-php-pecl-mysql php80-php-opcache php80-php-pear php80-php-soap php80-php-intl php80-php-pear php-pear-MDB2-Driver-mysqli.noarch

启动php

# systemctl  start php80-php-fpm

# systemctl status php80-php-fpm

# systemctl enable php80-php-fpm

测试

echo "<?php phpinfo(); ?>" > /var/www/html/info.php

# ll /var/www/html/

注意要重启apache

# systemctl restart httpd

http://192.168.50.166/info.php

④部署discuz论坛

  1. 下载安装包
  2. 上传包到服务器
  3. 解压安装包
  4. 拷贝discuz相关的文件到/var/www/html/
  5. 重启apache
  6. 打开网页安装论坛

下载安装包

Discuz! 官方交流社区 - 贰道网络 - Discuz应用中心社区 - 提供模板、插件、技术支持等全方位服务 - Powered by Discuz!

 

上传软件包

解压安装包

# mkdir discuz
# unzip Discuz_X3.5_SC_UTF8_20231221.zip -d discuz/

# yum -y install unzip

# unzip Discuz_X3.5_SC_UTF8_20240520.zip -d discuz/

# ls discuz/

upload 这个目录下面的所有文件是我们需要上传到服务器上的可用程序文件(仅上传目录里边的文件);

readme 目录为产品介绍、授权、安装、升级、转换以及版本更新日志说明(不要上传)

readme.html 为安装、升级教程(不要上传)。

utility.html 为论坛附带工具下载地址,比如升级程序(不要上传)。

拷贝discuz相关的文件到/var/www/html/

# cp -r discuz/upload/*   /var/www/html/
# ll /var/www/html/

重启apache服务

# systemctl restart httpd

 访问论坛   http://192.168.50.166/install/

原因是/var/www/html的文件没有写权限

修改/var/www/html/下的主件的权限777
# chmod -R 777 /var/www/html/
# ll /var/www/html/

如果出现下图的报错是因为没有安装mysqli这个模块 php-pear-MDB2-Driver-mysqli.noarch

安装了就不会出现上图的不支持,下面我们进行下一步

打开网页安装论坛

点开页面会发现会有个小bug,因为我们访问是直接输入的IP地址,然后其默认访问路径就是 ip地址/index.html,所以我们需要删除此文件。

至此我们的discuz论坛就搭建完成

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

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

相关文章

神经网络中如何优化模型和超参数调优(案例为tensor的预测)

总结&#xff1a; 初级&#xff1a;简单修改一下超参数&#xff0c;效果一般般但是够用&#xff0c;有时候甚至直接不够用 中级&#xff1a;optuna得出最好的超参数之后&#xff0c;再多一些epoch让train和testloss整体下降&#xff0c;然后结果就很不错。 高级&#xff1a;…

紫光展锐5G安卓核心板T760__国产手机芯片方案

展锐T760安卓核心板是具备续航和性能更加均衡的5G移动平台。其主要特点包括主流的6400万像素摄像头和高达120Hz的刷新率。 平台采用多模融合的创新架构和AI智能调节技术&#xff0c;从而在5G数据场景下降低了37%的整体功耗&#xff0c;在5G待机场景下降低了18%的整体功耗。 多…

新能源电池行业MES系统的主要功能

新能源电池行业电池生产特点 新能源电池种类繁多、生产工艺复杂&#xff0c;在市场定制化、小批量多品种的大趋势下&#xff0c;企业需要建立柔性高效的生产模式&#xff0c;以应对不同类型的客户和订单采用差异化的生产方式来实现成本的最优控制。 生产工艺复杂 锂电池生产…

Jenkins-zookeeper-docker-xxljob-rancher

文章目录 Jenkins实战1 新建任务需要的配置pipeline Zookeeper基础 Docker基础实操windows11 docker mysql DockerhouseDockerhubxxl-Job基础实战 Rancher基础思考 实战1 Rancher的某个namespace的scale为0 Jenkins 实战 1 新建任务需要的配置pipeline 该代码是Jenkinsfile&…

Linux HOOK机制与Netfilter HOOK

一. 什么是HOOK&#xff08;钩子&#xff09; 在计算机中&#xff0c;基本所有的软件程序都可以通过hook方式进行行为拦截&#xff0c;hook方式就是改变原始的执行流。 二. Linux常见的HOOK方式 1、修改函数指针。 2、用户态动态库拦截。 ①利用环境变量LD_PRELOAD和预装载机…

Linux系统及常用指令

目录 1、什么是Linux系统 2、为什么要用Linux系统 3、Linux系统的种类 4、如何安装Linux系统 5、常见的适配器种类 6、学习第一个Linux指令 7、安装ssh客户端软件 8、Linux系统的目录结构 9、Linux的常用命令 9.1 目录切换命令 9.2 查看目录下的内容 9.3 查看当前…

android13 frameworks里面常用的保存信息或者版本判断的方法

总纲 android13 rom 开发总纲说明 目录 1.前言 2. 数据库 2.1 代码读取用法参考 3.prop 属性配置 3.1 property的key值有哪些特点 4.区别 5. 其他数据存储 6.彩蛋 1.前言 frameworks 不像我们一般开发app那样,很多应用保存的方法都无法使用。这里记录我们系统rom开…

BUUCTF逆向wp [MRCTF2020]Transform

第一步 查壳。该题为64位。 第二步 进入主函数&#xff0c;跟进dword_40F040,它应该与关键字符串有关 分析一下&#xff1a; 初始化和输入 sub_402230(argc, argv, envp); 这行可能是一个初始化函数&#xff0c;用于设置程序环境或处理命令行参数。具体功能不明&#xff0c…

studio编译报错java.lang.NullPointerException

安卓studio编译报错&#xff0c;这个是一个新建的项目就报错&#xff0c;原因是 implementation androidx.appcompat:appcompat:1.7.0版本太高&#xff0c;修改后版本 implementation androidx.appcompat:appcompat:1.4.0&#xff0c; 编译又报错 18 issues were found wh…

图片如何去水印,PS 图片去水印的几种常见方法

在数字图像的世界里&#xff0c;水印常常被用来标识版权或防止未经授权的使用&#xff0c;但有时它们却成为了美观的障碍。无论是出于个人偏好还是专业需求&#xff0c;去除图片上的水印已经成为一项常见的任务。 Adobe Photoshop 作为行业标准的图像编辑软件&#xff0c;提供…

GPT-4o大语言模型优化、本地私有化部署、从0-1搭建、智能体构建

原文链接&#xff1a;GPT-4o大语言模型优化、本地私有化部署、从0-1搭建、智能体构建https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247608565&idx3&snd4e9d447efd82e8dd8192f7573886dab&chksmfa826912cdf5e00414e01626b52bab83a96199a6bf69cbbef7f7fe…

docker 安装并测试(Ubuntu下)

1. 确认安装环境&#xff08;操作系统版本和 CPU 架构&#xff09; 2. 如果有旧版本的 docker 需要进行卸载 使用 docker 命令检查是否已经安装了 docker 如果 docker 已经安装&#xff0c;使用以下命令卸载&#xff1a; apt-get purge docker-ce docker-ce-cli containerd…

C#医学影像管理系统源码(VS2013)

目录 一、概述 二、系统功能 系统维护 工作站 三、功能介绍 影像采集 统计模块 专业阅片 采集诊断报告 报告管理 一、概述 医学影像存储与传输系统&#xff08;PACS&#xff09;是一种集成了影像存储、传输、管理和诊断功能的系统。它基于数字化成像技术、计算机技术和…

最新开源的PDF版面分析工具 PDF-Extract-Kit

最近有一个新开源的版面分析的模型&#xff0c;做PDF版面分析效果非常好。而且对公式的解析效果比较好。虽然现在star数量不高&#xff0c;但是绝对会涨起来的。我们调研对比过很多开源的工具&#xff0c;效果都强差人意&#xff0c;这个是我看到的最满意的一个。甚至要比我们生…

【面试题】数据结构:堆排序的排序思想?

堆排序的排序思想&#xff1f; 堆排序是一种高效的排序算法&#xff0c;其基本思想是利用堆这种数据结构来实现排序。堆是一种特殊的完全二叉树&#xff0c;通常用数组来表示。堆排序的基本步骤如下&#xff1a; 1. 构建初始堆&#xff1a; 将待排序的数组转换成一个最大堆&a…

VS code配置docker远程连接

一 前置条件 1、本地已安装docker 2、服务端docker已配置Docker配置远程连接 二 VScode安装docker扩展 三 执行docker命令 1、切换到远程docker节点 docker context create remote-docker --docker "hosthttp://192.168.6.9:2375" 2、使用远程节点 docker cont…

Xcode进行真机测试时总是断连,如何解决?

嗨。大家好&#xff0c;我是兰若姐姐。最近我在用真机进行app自动化测试的时候&#xff0c;经常会遇到xcode和手机断连&#xff0c;每次断连之后需要重新连接&#xff0c;每次断开都会出现以下截图的报错 当这种情况出现时&#xff0c;之前执行的用例就相当于白执行了&#xff…

分布式搜索引擎ES-Elasticsearch进阶

1.head与postman基于索引的操作 引入概念&#xff1a; 集群健康&#xff1a; green 所有的主分片和副本分片都正常运行。你的集群是100%可用 yellow 所有的主分片都正常运行&#xff0c;但不是所有的副本分片都正常运行。 red 有主分片没能正常运行。 查询es集群健康状态&…

双向链表专题

目录 1. 双向链表的结构 2. 双向链表的实现 2.1 双向链表的初始化 2.2 双向链表的打印 2.3 双向链表的尾插 2.4 双向链表的头插 2.5 双向链表的判空函数 2.6 双向链表的尾删 2.7 双向链表的头删 2.8 双向链表的查找 2.9 在pos位置之后插入节点 2.10 删除指定位置…

云备份服务端

文件使用工具和json序列化反序列化工具 //文件和json工具类的设计实现 #ifndef __UTIL__ #define __UTIL__ #include<iostream> #include<fstream> #include<string> #include <vector> #include<sys/stat.h> #include"bundle.h" #inc…