当前位置: 首页 > news >正文

LAMP源码编译安装(Apache,Mysql,PHP,论坛安装详解)

目录

  • 前言
  • 一.LAMP概述
    • 1.LAMP架构
    • 2.LAMP组件的主要作用
  • 二.Apache httpd服务编译安装
    • 1.关闭防火墙,将安装Apache所需软件包传到/opt目录下
    • 2.安装环境依赖包
    • 3.配置软件模块
    • 4.编译及安装
    • 5.优化配置文件路径,并把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别
    • 6.添加httpd系统服务
    • 7.修改httpd 服务配置文件
    • 8.浏览器访问验证
  • 三.mysqld 服务的编译安装
    • 1.将安装mysql 所需软件包传到/opt目录下
    • 2.安装环境依赖包
    • 3.配置软件模块
    • 4.编译及安装
    • 5.创建mysql用户
    • 6.修改mysql 配置文件
    • 7.更改mysql安装目录和配置文件的属主属组
    • 8.设置路径环境变量
    • 9.初始化数据库
    • 10.添加mysqld系统服务
    • 11.修改mysql 的登录密码
    • 12.授权远程登录
  • 四.编译安装PHP 解析环境
    • 1.将安装PHP 所需软件包传到/opt目录下
    • 2.安装GD库和GD库关联程序,用来处理和生成图片
    • 3.配置软件模块
    • 4.编译及安装
    • 5.复制模版文件作为PHP 的主配置文件,并进行修改
    • 6.优化把PHP 的可执行程序文件放入路径环境变量的目录中便于系统识别
    • 7.修改httpd 服务的配置文件,让apache支持PHP
    • 8.验证PHP 测试页
  • 五.安装论坛
    • 1.创建数据库,并进行授权
    • 2.解压论坛压缩包
    • 3.更改论坛目录的属主
    • 4.浏览器访问验证
  • 安装包

前言

文章内所需的安装包结尾已附加安装包,详情见结尾

一.LAMP概述

1.LAMP架构

LAMP架构是目前成熟的企业网站应用模式之一”, 指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。
LAMP是一个缩写词,具体包括Linux操作系统、Apache网站服务器、MySQL数据库服务器、PHP (或Perl、Python) 网页编程语言。

2.LAMP组件的主要作用

(平台)Linux:作为LAMP架构的基础,提供用于支撑Web站点的操作系统,能够与其他三个组件提供更好的稳定性,兼容性(AMP组件也支持Windows、UNIX等平台)。
(前台)Apache:作为LAMP架构的前端,是一款功能强大,稳定性好的Web服务器程序,该服务器直接而向用户提供网站访问,发送网页,图片等文件内容。
(后台)MySQL:作为LAMP架构的后端,是一款流行的开源关系数据库系统。在企业网站、业务系统等应用中,各种账户信息、产品信息,客户资料、业务数据等都可以存储到MySQL数据库,其他程序可以通过SQL语句来查询,更改这些信息。
(中间连接) PHP/Perl/Python:作为三种开发动态网页的编程语言,负责解释动态网页文件,负责沟通Web服务器和数据库系统以协同工作,并提供Web应用程序的开发和运行环境。其中PHP是一种被广泛应用的开放源代码的多用途脚本语言,它可以嵌入到HTML中,尤其适合于Web应用开发。

在构建LAMP平台时,各组件的安装顺序依次为Linux、Apache、 MySQL、PHP。其中Apache和MySQL的安装并没有严格的顺序,PHP环境的安装一般放到最后安装,负责沟通Web服务器和数据库系统以协同工作。

二.Apache httpd服务编译安装

1.关闭防火墙,将安装Apache所需软件包传到/opt目录下

systemctl stop firewalld	
systemctl disable firewalld
setenforce 0httpd-2.4.29.tar.gz
apr-1.6.2.tar.gz
apr-util-1.6.0.tar.gz
#apr组件包用于支持Apache上层应用跨平台,提供底层接口库,能有效的降低并发连接数、降低进程和减少访问堵塞。

在这里插入图片描述

2.安装环境依赖包

yum -y install \
gcc									#C语言的编译器
gcc-c++ \							#C++的编译器
make \								#源代码编译器( 源代码转换成二进制文件)
pcre \								#pcre是一-个Perl函数库,包括perl兼容的正则表达式库
pcre-devel \						#per1的接口开发包.
expat-devel \						#用于支持网站解析HTML、XML文 件
perl								#perl语言编译器
yum -y install gcc gcc-c++ make pcre pcre-devel expat-devel perl

在这里插入图片描述

3.配置软件模块

cd /opt/
tar zxvf apr-1.6.2.tar.gz
tar zxvf apr-util-1.6.0.tar.gz
tar jxvf httpd-2.4.29.tar.bz2mv apr-1.6.2 /opt/httpd-2.4.29/srclib/apr
mv apr-util-1.6.0 /opt/httpd-2.4.29/srclib/apr-utilcd /opt/httpd-2.4.29/
./configure \
--prefix=/usr/local/httpd \		#指定将 httpd 服务程序的安装路径
--enable-so \					#启用动态加载模块支持,使 httpd 具备进一步扩展功能的能力
--enable-rewrite \				#启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护
--enable-charset-lite \			#启动字符集支持,以便支持使用各种字符集编码的页面
--enable-cgi					#启用CGI(通用网关接口)脚本程序支持,便于网站的外部扩展应用访问能力./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi

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

4.编译及安装

make							#make -j 2  表示开2核同时进行编译
make install

在这里插入图片描述

5.优化配置文件路径,并把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别

ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/

在这里插入图片描述

6.添加httpd系统服务

方法一:
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd		#用于service服务管理
chmod +x /etc/init.d/httpd
vi /etc/init.d/httpd
#!/bin/bash												#在第一行前插入新行,添加此三行内容
# chkconfig: 35 85 21									#35级别自动运行  第85个启动 第21个关闭
# description: Apache is a World Wide Web serverchkconfig --add httpd     		#将httpd服务加入到service管理器systemctl start httpd.service
或
service httpd start

在这里插入图片描述

方法二:
vim /lib/systemd/system/httpd.service
[Unit]
Description=The Apache HTTP Server						#描述
After=network.target									#描述服务类别
[Service]
Type=forking											#后台运行方式
PIDFile=/usr/local/httpd/logs/httpd.pid					#PID文件位置
ExecStart=/usr/local/bin/apachectl $OPTIONS				#启动服务
ExecReload=/bin/kill -HUP $MAINPID						#根据PID重载配置
[Install]
WantedBy=multi-user.targetsystemctl start httpd.service
systemctl enable httpd.service

在这里插入图片描述

7.修改httpd 服务配置文件

vim /etc/httpd.conf
--52行--修改
Listen 192.198.80.10:80
--197行--取消注释,修改
ServerName www.kgc.com:80--221行--默认首页存放路径
DocumentRoot "/usr/local/httpd/htdocs"
--255行--默认首页文件名设置
DirectoryIndex index.htmlhttpd -t  或 apachectl -t			#检查配置文件的配置项是否有误
cat /usr/local/httpd/htdocs/index.html
systemctl restart httpd.service

加粗样式

8.浏览器访问验证

netstat -anpt | grep 80
echo "192.168.80.10 www.kgc.com" >> /etc/hostshttp://192.168.121.11
http://www.kgc.com

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

三.mysqld 服务的编译安装

1.将安装mysql 所需软件包传到/opt目录下

mysql-5.7.17.tar.gz
boost_1_59_0.tar.gz		#支持c++的运行库

在这里插入图片描述

2.安装环境依赖包

yum -y install \
gcc \
gcc-c++ \
ncurses \				#字符终端下图形互动功能的动态库
ncurses-devel \			#ncurses开发包
bison \					#语法分析器
cmake					#mysql需要用cmake编译安装yum -y install gcc gcc-c++ ncurses ncurses-devel bison cmake

在这里插入图片描述

3.配置软件模块

tar zxvf mysql-5.7.17.tar.gz
tar zxvf boost_1_59_0.tar.gzcd /opt
mv boost_1_59_0 /usr/local/boost		#重命名

在这里插入图片描述

cd /opt/mysql-5.7.17/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \		#指定mysql的安装路径
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ #指定mysql进程监听套接字文件(数据库连接文件)的存储路径
-DSYSCONFDIR=/etc \                             #指定配置文件的存储路径
-DSYSTEMD_PID_DIR=/usr/local/mysql \            #指定进程文件的存储路径
-DDEFAULT_CHARSET=utf8  \                       #指定默认使用的字符集编码,如 utf8
-DDEFAULT_COLLATION=utf8_general_ci \			#指定默认使用的字符集校对规则
-DWITH_EXTRA_CHARSETS=all \						#指定支持其他字符集编码
-DWITH_INNOBASE_STORAGE_ENGINE=1 \              #安装INNOBASE存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \               #安装ARCHIVE存储引擎 
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \             #安装BLACKHOLE存储引擎 
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \            #安装FEDERATED存储引擎 
-DMYSQL_DATADIR=/usr/local/mysql/data \         #指定数据库文件的存储路径
-DWITH_BOOST=/usr/local/boost \          #指定boost的路径,若使用mysql-boost集成包安装则-DWITH_BOOST=boost
-DWITH_SYSTEMD=1								#生成便于systemctl管理的文件

在这里插入图片描述

存储引擎选项:
MYISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)

注意:如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的CMakeCache.txt文件删除,然后再重新CMAKE,否则错误依旧

4.编译及安装

make -j  4  && make install

在这里插入图片描述

5.创建mysql用户

useradd -M -s /sbin/nologin  mysql

在这里插入图片描述

6.修改mysql 配置文件

vim /etc/my.cnf								#删除原配置项,再重新添加下面内容
[client]									#客户端设置
port = 3306
socket = /usr/local/mysql/mysql.sock			[mysql]										#服务端设置
port = 3306
socket = /usr/local/mysql/mysql.sock
auto-rehash									#开启自动补全功能[mysqld]									#服务全局设置
user = mysql       							#设置管理用户
basedir=/usr/local/mysql					#指定数据库的安装目录
datadir=/usr/local/mysql/data				#指定数据库文件的存储路径
port = 3306									#指定端口
character-set-server=utf8					#设置服务器字符集编码格式为utf8
pid-file = /usr/local/mysql/mysqld.pid		#指定pid 进程文件路径
socket=/usr/local/mysql/mysql.sock			#指定数据库连接文件
bind-address = 0.0.0.0						#设置监听地址,0.0.0.0代表允许所有,如允许多个IP需空格隔开
skip-name-resolve							#禁用DNS解析
max_connections=2048						#设置mysql的最大连接数
default-storage-engine=INNODB				#指定默认存储引擎
max_allowed_packet=16M						#设置数据库接收的数据包大小的最大值
server-id = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,
NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

sql_mode常用值如下:
NO_ENGINE_SUBSTITUTION
如果需要的存储引擎被禁用或未编译,那么抛出错误。不设置此值时,用默认的存储引擎替代,并抛出一个异常
STRICT_TRANS_TABLES
在该模式下,如果一个值不能插入到一个事务表中,则中断当前的操作,对非事务表不做限制
NO_AUTO_CREATE_USER
禁止GRANT创建密码为空的用户
NO_AUTO_VALUE_ON_ZERO
mysql中的自增长列可以从0开始。默认情况下自增长列是从1开始的,如果你插入值为0的数据会报错
NO_ZERO_IN_DATE
不允许日期和月份为零
NO_ZERO_DATE
mysql数据库不允许插入零日期,插入零日期会抛出错误而不是警告
ERROR_FOR_DIVISION_BY_ZERO
在INSERT或UPDATE过程中,如果数据被零除,则产生错误而非警告。默认情况下数据被零除时MySQL返回NULL
PIPES_AS_CONCAT
将"||"视为字符串的连接操作符而非或运算符,这和Oracle数据库是一样的,也和字符串的拼接函数Concat相类似
ANSI_QUOTES
启用ANSI_QUOTES后,不能用双引号来引用字符串,因为它被解释为识别符

在这里插入图片描述

7.更改mysql安装目录和配置文件的属主属组

chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf

在这里插入图片描述

8.设置路径环境变量

echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile	
source /etc/profile

在这里插入图片描述

9.初始化数据库

cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \				#生成初始化密码为空
--user=mysql \                      #指定管理用户
--basedir=/usr/local/mysql \        #指定数据库的安装目录
--datadir=/usr/local/mysql/data		#指定数据库文件的存储路径

在这里插入图片描述

10.添加mysqld系统服务

cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/		#用于systemctl服务管理
systemctl daemon-reload         #刷新识别     
systemctl start mysqld.service  #开启服务
systemctl enable mysqld         #开机自启动
netstat -anpt | grep 3306       #查看端口

在这里插入图片描述

11.修改mysql 的登录密码

mysqladmin -u root -p password "666" 	#给root账号设置密码为666,提示输入的是原始密码(为空)

在这里插入图片描述

12.授权远程登录

mysql -u root -p
grant all privileges on *.* to 'root'@'%' identified by '666';
#授予root用户可以在所有终端远程登录,使用的密码是666,并对所有数据库和所有表有操作权限show databases;			#查看当前已有的数据库

在这里插入图片描述

四.编译安装PHP 解析环境

1.将安装PHP 所需软件包传到/opt目录下

php-7.1.10.tar.bz2

在这里插入图片描述

2.安装GD库和GD库关联程序,用来处理和生成图片

yum -y install \
gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

在这里插入图片描述

3.配置软件模块

cd /opt
tar jxvf php-7.1.10.tar.bz2
cd /opt/php-7.1.10/
./configure \
--prefix=/usr/local/php7 \							#指定将 PHP 程序的安装路径
--with-apxs2=/usr/local/httpd/bin/apxs \			#指定Apache httpd服务提供的apxs 模块支持程序的文件位置
--with-mysql-sock=/usr/local/mysql/mysql.sock \		#指定mysql 数据库连接文件的存储路径
--with-config-file-path=/usr/local/php7				#设置 PHP 的配置文件 php.ini 将要存放的位置
--with-mysqli \										#添加 MySQL 扩展支持 #mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定
--with-zlib \										#支持zlib功能,提供数据压缩
--with-curl \										#开启curl扩展功能,实现HTTP的Get下载和Post请求的方法
--with-gd \											#激活gd 库的支持
--with-jpeg-dir \									#激活jpeg 的支持
--with-png-dir \									#激活png 的支持
--with-freetype-dir \
--with-openssl \
--enable-mbstring \									#启用多字节字符串功能,以便支持中文等代码
--enable-xml \										#开启扩展性标记语言模块
--enable-session \									#会话
--enable-ftp \										#文本传输协议
--enable-pdo \										#函数库
--enable-tokenizer \								#令牌解释器
--enable-zip										#ZIP压缩格式

在这里插入图片描述

4.编译及安装

make -j  4 && make install

在这里插入图片描述

5.复制模版文件作为PHP 的主配置文件,并进行修改

cp /opt/php-7.1.10/php.ini-development /usr/local/php7/php.ini	
#在测试环境时使用php.ini-development文件,而在生产环境时使用php.ini-production文件
vim /usr/local/php7/php.ini
--1170行--修改
mysqli.default_socket = /usr/local/mysql/mysql.sock
--939行--取消注释,修改
date.timezone = Asia/Shanghai

在这里插入图片描述

6.优化把PHP 的可执行程序文件放入路径环境变量的目录中便于系统识别

ln -s /usr/local/php7/bin/* /usr/local/bin/
php -m 			#查看PHP 加载了哪些模块

在这里插入图片描述

7.修改httpd 服务的配置文件,让apache支持PHP

vim /etc/httpd.conf 
--393行--插入以下内容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
--256行--修改首页文件名设置
DirectoryIndex index.html index.php---检查支持php7的模块是否存在------
LoadModule php7_module        modules/libphp7.so

在这里插入图片描述

8.验证PHP 测试页

rm -rf /usr/local/httpd/htdocs/index.html
vim /usr/local/httpd/htdocs/index.php
<?php
phpinfo();
?>systemctl restart httpd.service浏览器访问
http://192.168.80.10

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

五.安装论坛

1.创建数据库,并进行授权

mysql -u root -pCREATE DATABASE bbs;
#创建一个数据库GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY '666';
#把bbs数据库里面所有表的权限授予给bbsuser,并设置密码666flush privileges;					
#刷新数据库show databases;

在这里插入图片描述

2.解压论坛压缩包

unzip /opt/Discuz_X3.4_SC_UTF8.zip -d /opt/dis
cd /opt/dis/dir_SC_UTF8/
cp -r upload/ /usr/local/httpd/htdocs/bbs		#上传站点更新包

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

3.更改论坛目录的属主

ps aux							#查看发现论坛进程的用户名是daemon
cd /usr/local/httpd/htdocs/bbs
chown -R daemon ./config
chown -R daemon ./data
chown -R daemon ./uc_client
chown -R daemon ./uc_server/data

在这里插入图片描述

4.浏览器访问验证

论坛页面访问
http://192.168.121.11/bbs
----------------------------------------------------------------------------------------------------------
数据库服务器:localhost     ###本地架设就用localhost,如何不是在在本机上就要填写IP地址和端口号
数据库名字:bbs
数据库用户名:bbsuser
数据库密码:666
管理员账号:root
管理员密码:666
----------------------------------------------------------------------------------------------------------
论坛后台管理员页面
http://192.168.80.10/bbs/admin.php

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

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

安装包

链接: 安装包地址
提取码:1122

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

设计模式导读助记

各个设计模式的详细介绍都已经完成&#xff0c;但是不经常用总会忘&#xff0c;所以我想用 一句话 总结设计模式&#xff0c;思考模式的真正意图&#xff0c;再用 一点提示 来思考代码如何实现 写在前面 我整理的设计模式这一个系列&#xff0c;主要是结合了以下几本书 : 《设…...

RT-Thrad|STM32F103+ESP8266 S01+RT-Thread联网之环境搭建(1/3)

文章目录前言硬件准备百问网STM32F103ESP8266 01SESP8266 介绍ESP8266 01S技术规格参数软件准备下载安装 Keil μVision5Pack Installer安装 ST-Link 驱动获取RT-Thread源码下载安装 RT-Thread env 工具文章列表 RT-Thrad|STM32F103ESP8266 S01RT-Thread联网之环境搭建(1/3)RT…...

Flask初体验

Flask初体验 flask框架是一个微型框架&#xff0c;但是微型框架不代表功能比其他框架少&#xff0c;并且flask的约束也比较少&#xff0c;使用更加方便。Flask安装 pip install flask 废话不多说直接上代码 from flask import Flaskapp Flask(__name__)app.route("/&qu…...

天眼查怎么删除信息_天眼查删除信息的方法介绍

天眼查信息怎么删除 天眼查风险信息怎么清除 天眼查问答信息怎么删除 天眼查法律诉讼信息可以删吗 天涯查上的信息删除怎么操作&#xff0c;天眼查成立于2014年&#xff0c;至今发展迅速&#xff0c;已经帮助了无数的企业和消费者&#xff0c;那么很多企业的天眼查信息有时候需…...

5.Random

用于生产一个随机数 步骤&#xff1a; 1.导包 import java.util.Random; 2.创建对象 Random random new Random();3.获取随机数 int number random.nextInt(10); //随机数的取值范围是[0,10),即大于等于&#xff0c;小于10 上面不能获取到10&#xff0c;若要获取到10&…...

Xxl-Job调度器原理解析

项目解析源码地址&#xff1a;https://gitee.com/lidishan/xxl-job-code-analysisxxl-job版本&#xff1a;2.3.0Xxl-Job分为执行器、调度器。而我们平时的客户端就属于一个执行器&#xff0c;执行器启动的时候会自动注册到调度器上&#xff0c;然后调度器进行远程调度。调度器初…...

51单片机利用锁存器控制数码管显示年月日时分秒

数码管模块中的两片74hc573&#xff0c;一片锁存段码&#xff0c;一片锁存位码&#xff0c;这样才能驱动8位数码管。74hc573是锁存器&#xff0c;用于数码管显示时通常是采用段选、片选共用同一组并口的驱动方式。 驱动数码管需要两个信号&#xff0c;一个是段选信号&#xff…...

webrtc之SVC实现(十)

一、概念 SVC&#xff08;可适性视频编码或可分级视频编码&#xff09;是传统H.264/MPEG-4 AVC编码的延伸&#xff0c;可提升更大的编码弹性&#xff0c;并具有时间可适性&#xff08;Temporal Scalability&#xff09;、空间可适性&#xff08;Spatial Scalability&#xff09…...

LeetCode 数值的整数次方

实现 pow(x, n) &#xff0c;即计算 x 的 n 次幂函数&#xff08;即&#xff0c;xn&#xff09;。不得使用库函数&#xff0c;同时不需要考虑大数问题。 示例 1&#xff1a; 输入&#xff1a;x 2.00000, n 10 输出&#xff1a;1024.00000 示例 2&#xff1a; 输入&#xf…...

python 继承和多态

在已有类的基础上创建新类&#xff0c;这其中的一种做法就是让一个类从另一个类那里将属性和方法直接继承下来&#xff0c;从而减少重复代码的编写。提供继承信息的我们称之为父类&#xff0c;也叫超类或基类&#xff1b;得到继承信息的我们称之为子类&#xff0c;也叫派生类或…...

JAVA 基础学习之 继承与方法覆写

1 继承引入​​​​​​​ 三个类都有重复的代码&#xff0c;可以把这共同的代码抽出去&#xff0c;抽出去放到另外一个类里面&#xff1b;下面的3个类和上面的类需要发生一点关系&#xff08;继承&#xff09;&#xff0c;上面的类叫做 父类&#xff08;超类&#xff0c;基类&…...

个性化个人主页html5模板

介绍&#xff1a; 个性化个人主页html5模板 网盘下载地址&#xff1a; http://kekewl.net/tARDuX5n02U0 图片&#xff1a;...

java IO教程《三》

缓冲区流讲解(Buffered) 什么是缓冲区&#xff1f; 缓冲流&#xff0c;也叫高效流&#xff0c;是对4个基本的File流的增强&#xff0c;所以也是4个流&#xff0c;按照数据类型分类&#xff1a; 字节缓冲流&#xff1a;BufferedInputStream&#xff0c;BufferedOutputStream字…...

elementUI-Tree 树形控件的使用

elementUI-Tree 树形控件的使用 实现效果&#xff1a; 控件的官方使用说明 控件要求返回的数据结构 {"success": true,"code": 20000,"message": "成功","data": {"items": [{"id": "1394579386…...

实训第一天以及第二天所学记录

实训第一天以及第二天所学记录 浏览器内核 IE&#xff1a;Trident Firefox&#xff1a;Gecko Chrome&#xff1a;Webkit / Blink Safari&#xff1a;Webkit Opera&#xff1a;Presto / Blink 在VScode中使用注释的快捷键 按住键盘的Ctrl/ 元素 &#xff08;标签 标记&…...

跨域请求

/* * Description: 配置文件 */ module.exports { publicPath: "./", devServer: { open: true, proxy: "http://106.15.179.105/api" //跨域路径 }, }; // proxy是代理的意思 // 代理跨域就是在欺骗浏览器 让浏览器认为你访问的还是 同…...

Mac os下通过Anaconda在远程服务器配置python虚拟环境

一、SSH管理软件 这里推荐一款本人正在使用的软件&#xff0c;Termius。Termius是一款非常好用而且漂亮的SSH客户端&#xff0c;能快速远程控制服务器&#xff0c;可以定制自己喜欢的主题.Termius不仅涵盖了Windows、Linux、OSX&#xff0c;还变态得支持Android和iOS&#xff…...

Labview需求(部分)

本人从事工控行业多年,有一些资源,目前labview的单子干不过来了,想找几个靠谱的labview工程师跟我合作,想做兼职,接单的labview工程师可以私聊我,另外我有一些项目还需要跟单片机工程师,plc工程师,fpga工程师合作,欢迎大家找我合作!以下是手里比较着急的项目,需要外包 需求1&am…...

2021java1年经验公司面试真题

1面我就省略了&#xff0c;主要就是看你的以前工作情况&#xff0c;以前工作内容能不能清晰表达&#xff0c;还有一些简单的java基础问题&#xff0c;大概20多分钟。二面就是40分钟基础&#xff0c;20分钟业务&#xff0c;10分钟个人情况。下面是二面问题 1.自我介绍 做一下自…...

Unity基础之C#核心篇笔记4:多态

Unity基础之C#核心篇笔记4&#xff1a;多态多态1.多态的概念2.解决的问题3.多态的实现4.总结抽象类和抽象方法1.抽象类2.抽象函数3.总结4.练习题接口1.接口的概念2. 接口的申明3.接口的使用4.接口可以继承接口5.显示实现接口6.总结7.练习题密封方法1.密封方法基本概念2.实例3.总…...

2021年危险化学品经营单位安全管理人员考试APP及危险化学品经营单位安全管理人员证考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 危险化学品经营单位安全管理人员考试APP是安全生产模拟考试一点通总题库中随机出的一套危险化学品经营单位安全管理人员证考试&#xff0c;在公众号安全生产模拟考试一点通上点击危险化学品经营单位安全管理人员作业手…...

mac下多个安装php版本并切换的方法

brew install php-version 一般总是失败&#xff0c;直接从git上clone下来使用了。 https://github.com/wilmoore/php-version/wiki/Troubleshooting#gathering-debug-info 进入你要放置php-version的目录。 git clone https://github.com/wilmoore/php-version.git source…...

可视化笔记-ECharts

文章目录一、ECharts官网二、使用步骤三、ECharts案例(一)、直接基于假数据绘制条形图1.创建pyCharm项目2.在项目里面添加Echarts和jQuery3.创建一个页面&#xff0c;demo01.html四、课堂练习绘制男女人数条形图一、ECharts官网 http://echarts.apache.org/zh/ 二、使用步骤 …...

vue+flv.js+SpringBoot+websocket实现视频监控与回放

vueflv.jsSpringBootwebsocket实现视频监控与回放 需求:vuespringboot的项目,需要在页面展示出海康的硬盘录像机连接的摄像头的实时监控画面以及回放功能. 之前项目里是纯前端实现视频监控和回放功能.但是有局限性.就是ip地址必须固定.新的需求里设备ip不固定.所以必须换一种…...

paraview使用说明书

paraview tutorial&#xff1a;The ParaView Tutorial - KitwarePublic 1.简介 大多数人与ParaView相关联的应用程序实际上只是一个小的客户端应用程序&#xff0c;它构建在一堆库之上&#xff0c;这些库为ParaView提供了它的功能。 由于ParaView的绝大多数功能都是在库中实…...

MySQL基础面试题(2021年六月面试记录)

文章目录MySQL存储引擎MyISAM和InnoDB区别索引事务的实现原理并发事务带来哪些问题?不可重复读和幻读区别事务的隔离级别MyISAM和InnoDB存储引擎使用的锁表级锁和行级锁的对比InnoDB存储引擎的锁的算法MySQL中的varchar和char有什么区别B树索引、哈希索引、B树的区别drop、del…...

MD5加密工具类

依赖 <dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-core</artifactId><version>1.7.1</version></dependency>md5加密工具类 package com.fsx.shiro.utils;import org.apache.shiro.crypto.hash.Md5H…...

Appium安装及环境部署

依赖&#xff1a;JDK环境 Android SDK Node.js python环境 第一步&#xff1a;安装node.js 地址&#xff1a;https://nodejs.org/ 这里安装没有技巧&#xff0c;无脑下一步就行&#xff08; 注意安装路径是自己的预期就行&#xff09; 这边建议把你的安装路径放在系统变量…...

安装好的matlab如何添加额外的工具箱Toolbox

最最简单的办法&#xff1a;就是通过MATLAB自己的附加功能里面去找&#xff0c;然后安装。 可能你会说要正版才可以&#xff0c;我不知道自己是不是正版&#xff0c;反正我是破解的那种&#xff0c;然后在官网下载额外的toolbox其实不需要你是否有正版授权&#xff0c;只要有一…...

effective_transformer

对字节跳动 effective_transformermer的理解 transformer模型在self-attention的时候&#xff0c;需要用到统一输入batch的长度。但是其他模块不需要。因此&#xff0c;在其他模块&#xff08;FF模块&#xff09;可以移除pad token...

axure到底好不好学,有哪些技巧

Axure学习难吗&#xff1f;这个问题一直引起很多朋友的讨论&#xff0c;有的觉得难&#xff0c;有的觉得不难。当然&#xff0c;人不一样&#xff0c;每个人的学习方式也不一样&#xff0c;对学习难度的理解自然也不一样&#xff0c;这个问题自然没有定论。 ​在学习的时候&…...

Springboot使用@Cacheable注解实现数据缓存

本文介绍如何在Springboot中通过Cacheable注解实现数据缓存。在每次调用添加了Cacheable注解的方法&#xff08;需要缓存功能的方法&#xff09;时&#xff0c;Spring 会检查指定参数的指定目标方法是否已经被调用过&#xff0c;如果有就直接从缓存中获取方法调用后的结果&…...

Boostrap-Table插件

Boostrap-Table插件能使我们的分页查询数据不必重定向页面,因为重定向需要重新加载整个页面的资源对于一些复杂的页面响应时间是很长的,我们如果只关注表格中的数据改动 如果项目中是使用Bootstrap Table来做数据展示的,所以我们要了解数据如何展示&#xff0c;我们需要先来了…...

乘法口诀表(c++)

#include<iostream> using namespace std; int main() {for (int j 1; j < 10; j) {for (int i 1; i < 10; i){if (i < j) {cout << i << "" << j << " " << i * j << " ";}}cout <...

python乘法口诀表

python乘法口诀表 代码如下&#xff1a; for i in range(1, 10):for j in range(0, i):print(str(i)xstr((j1))str(i*(j1)), end )print()测试效果如下&#xff1a;...

ZMQ之多线程编程

使用ZMQ进行多线程编程&#xff08;MT编程&#xff09;将会是一种享受。在多线程中使用ZMQ套接字时&#xff0c;你不需要考虑额外的东西&#xff0c;让它们自如地运作就好。 使用ZMQ进行多线程编程时&#xff0c;不需要考虑互斥、锁、或其他并发程序中要考虑的因素&#xff0c;…...

shell脚本编写乘法口诀

#!/bin/bash for ((i1;i<9;i)) dofor((a1;a<$i;a))doecho -n "$i x $a$(expr $i \* $a) "if [ $a -eq $i ]thenecho -e \nfidone done...

Python九乘九乘法口诀表

九九乘法表 1x1 1 1x2 2 2x2 4 1x3 3 2x3 6 3x3 9# 外层循环控制行数 for i in range(1, 10):# 内存循环控制每行怎么打印for j in range(1, i1):print({}x{} {}.format(j, i, j*i), end )# 换行print()...

详解nginx的root与alias

文章目录1. 结论2. 详解root2.1 基本用法2.2 location的最左匹配原则2.3 index2.4 nginx location解析url工作流程2.5 末尾/3. 详解alias3.1 基本用法4. 特殊情况4.1 alias指定文件4.2 root指定文件nginx版本: 1.18.0 1. 结论 location命中后 如果是root&#xff0c;会把请求…...

阿里旺旺信息发送器(一键发送,教程V)

阿里旺旺信息发送&#xff0c;原理&#xff0c;找到阿里旺旺聊天窗口的文本框句柄&#xff0c;发送文本就行了&#xff0c;说得很简单。(QQ真讨厌&#xff0c;技术好高&#xff0c;这种方法可不行&#xff0c;所以我说阿里旺旺不如QQ技术&#xff0c;人家都和谐好几年了&#x…...

Vue源码学习(六)- 实例方法

目标 深入理解以下实例方法的实现原理 vm.$setvm.$deletevm.$watchvm.$onvm.$emitvm.$offvm.$oncevm._updatevm.$forceUpdatevm.$destroyvm.$nextTickvm._render 入口 /src/core/instance/index.js 该文件是Vue实例的入口文件&#xff0c;包括Vue构造函数的定义&#xff0c;…...

程序员防脱发保养三字经

早早起&#xff0c;去上班&#xff0c;做计划&#xff0c;按完成&#xff0c;不加班。 早早睡&#xff0c;规律起&#xff0c;杯泡杞&#xff0c;多补水&#xff0c;防干燥。 多洗头&#xff0c;用护发&#xff0c;每回家&#xff0c;少用脑&#xff0c;多躺尸。 仅供自娱自乐…...

防脱发,生发

1.外敷&#xff1a;、头皮精华avada 2.内服食补&#xff1a;黑米黑豆黑芝麻 3.内调&#xff01;&#xff1a;早睡早起不熬夜&#xff01;&#xff01; 4.医院挂头皮科&#xff1a;是否雄脱...

90后最担心的事情不是猝死而是脱发!赋强教你防脱发!

以前很羡慕明星如丝般顺滑不多不少的头发&#xff0c;自己马尾一大把土里土气。那时候的我没有想到&#xff0c;命运如此残酷&#xff0c;居然让我这个90后&#xff0c;要么旱死&#xff0c;要么涝死&#xff01;以前上学那会经常被人问头发怎么长的这么好&#xff0c;现在变成…...

老程序员防脱发养发攻略征求。

各位程序员朋友们&#xff0c; 见字如面&#xff0c;你们好&#xff01;我是一个00后程序员&#xff0c;却有着一头大厂见了都会争相要的发型。尽管深深感受到了自己被重视的程度&#xff0c;但作为一个正值壮年的小伙子&#xff0c;拥有一个帅气的外形&#xff0c;相信没有人能…...

1 0 2 4 程序员防脱发指南

有时候真的怀疑上帝也是个程序员因为他写的这个世界真的有着不少匪夷所思的Bug扫描下方二维码马上免费领取猎聘X霸王程序员专用限量版洗发水错过等一年&#xff01;&#xff01;&#xff01;在文章底部留言说说你的防脱高招或秘诀留言点赞数排名前三名的读者&#xff0c;每人可…...

android官方文档中文版_数据科学|最全实至名归,NumPy 官方早有中文教程,结合深度学习,还有防脱发指南...

↑↑↑↑↑点击上方蓝色字关注我们&#xff01;『运筹OR帷幄』转载作者&#xff1a;机器之心编者按如果说Pandas是传统机器学习的必备模块&#xff0c;那么Numpy就是深度学习的基本功。目前市面上有太多基于Pandas的教程&#xff0c;但是关于Numpy的教程&#xff0c;在寻找资料…...

TypeScript防脱发级入门——扩展类型枚举

嗨&#xff01;大家好&#xff01;我是法医&#xff0c;一只治疗系前端码猿&#x1f412;&#xff0c;与代码对话&#xff0c;倾听它们心底的呼声&#xff0c;期待着大家的点赞&#x1f44d;与关注➕。当然也欢迎加入前端猎手技术交流群&#x1f61b;&#xff0c;文末扫码我拉你…...

TypeScript防脱发级入门——TS中的类

嗨&#xff01;大家好&#xff01;我是法医&#xff0c;一只治疗系前端码猿&#x1f412;&#xff0c;与代码对话&#xff0c;倾听它们心底的呼声&#xff0c;期待着大家的点赞&#x1f44d;与关注➕。 1. 面向对象的概述 说到类就不得不说面向对象了&#xff0c;这是因为TS为…...

TypeScript防脱发级入门——基本类型检查

嗨&#xff01;大家好&#xff01;我是法医&#xff0c;一只治疗系前端码猿&#x1f412;&#xff0c;与代码对话&#xff0c;倾听它们心底的呼声&#xff0c;期待着大家的点赞&#x1f44d;与关注➕。 1. 如何进行类型约束 类型约束其实很简单&#xff0c;只需要在变量、函数…...