配置Java JDK
{% hideToggle 快速配置JDK11 %}
1. 进入file目录(可选)
cd /opt/file
下面全部操作都在/opt/file目录下操作,你也可以选择在其他目录进行。
2. 下载JDK11
sudo wget -P /opt/file -O jdk-11.0.19_linux-x64_bin.tar https://download.oracle.com/otn/java/jdk/11.0.19+9/56a39267b45342398c37a72026d961ab/jdk-11.0.19_linux-x64_bin.tar.gz?AuthParam=1685293276_d5e2ef0f7172f346a89a348c9e17cdbe
-
-P:指定下载文件存储路径 -
-O:下载后指定存储文件名
3. 创建jdk存储位置
我习惯将JDK存储在/bin/jvm下面
sudo mkdir -p /bin/jvm
4. 解压JDK
tar -zxvf jdk-11.0.19_linux-x64_bin.tar -C /bin/jvm/
5. 添加环境变量
sed -i '$a\export JAVA_HOME=/bin/jvm/jdk-11.0.19 #这个是你解压的JDK文件路径\
export PATH=$PATH:${JAVA_HOME}/bin\
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar' /etc/profile
6. 加载环境变量
source /etc/profile
7. 查看JDK版本
java -version
# 出现效果:
java version "11.0.19" 2023-04-18 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.19+9-LTS-224)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.19+9-LTS-224, mixed mode)
{% endhideToggle %}
建议在root用户下操作
前往官网下载JDK(此处我下载的是jdk-1.8.0)

su # 输入超级用户密码
下载JDK并解压
上传文件到Linux(二选一)
scp .\jdk-8u341-linux-x64.tar.gz lilbai@192.168.2.5:/home/lilbai/Downloads

解压
tar -zxvf jdk-8u341-linux-x64.tar.gz
将文件移动到/opt下
一般默认JDK安装在
/bin/jvm/下,我这里安装在/opt下
mv jdk1.8.0_341 /opt/
打开配置环境变量文件
vim /etc/profile
配置环境变量
sed -i '$a\export JAVA_HOME=/bin/jvm/jdk-11.0.19 #这个是你解压的JDK文件路径\
export PATH=$PATH:${JAVA_HOME}/bin\
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar' /etc/profile
使用sed命令将内容插入到/etc/profile最后一行
重新加载环境变量
source /etc/profile
查看JDK是否配置好
java -version # 出现如下代码说明成功了
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)

配置Tomcat
版本 10.0.23
文件类型:tar.gz
配置Tomcat前配置JDK,如果你还没有配置JDK,请看上一步
前往官网下载
蓝奏云:https://rookie1679.lanzouy.com/iEVvB0bztaef

将文件上传到Linux
scp .\apache-tomcat-10.0.23.tar.gz lilbai@192.168.232.130:/home/lilbai/Downloads
解压文件
tar -zxvf apache-tomcat-10.0.23.tar.gz
移动到/opt下
mv apache-tomcat-10.0.23 /opt
运行Tomcat运行测试
/opt/apache-tomcat-10.0.23/bin/startup.sh

浏览器打开Tomcat
tomcat默认是使用8080端口的,我们在访问的时候要加上8080端口
192.168.232.130:8080 #根据你的IP地址打开

Linux解压编译安装Nginx
下载Nginx
由于Nginx官网在国外,有时候直接下载Nginx的速度不是很理想,你可以挂个梯子下载到本机再上传到服务器。
前往官网下载
官网Nginx-1.24.0 pgp:http://nginx.org/download/nginx-1.24.0.tar.gz
蓝奏云 :https://rookie1679.lanzouy.com/iI6Cc0bzta5g

上传文件到服务器
在Windows在打开终端,进入nginx安装包下载目录
scp nginx-1.22.0.tar.gz lilbai@192.168.232.130:/home/lilbai/Downloads
使用wget下载
sudo wget -P /opt/file http://nginx.org/download/nginx-1.24.0.tar.gz
这里下载时,我使用了最新版1.24.0
解压文件
sudo tar -zxvf nginx-1.22.0.tar.gz -C /opt
解压后的Nginx文件夹不要删掉,即使安装完也不要删掉,后面如果你想添加nginx模块,你还需要这个源文件进行编译安装新模块在nginx里面。
安装依赖
{% tabs %}
博主安装环境:Ubuntu-22.04-Server
1. 更新包
sudo apt-get update
2. 安装依赖
sudo apt -y install gcc make libssl-dev zlib1g-dev libgd-dev libgeoip-dev libpcre2-dev libpcre3-dev
1. 更新包
sudo yum -y update
2. 安装依赖
sudo yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
{% endtabs %}
进入Nginx根目录
cd /opt/nginx-1.22.0
编译Nginx
sudo ./configure --prefix=/usr/local/nginx --with-http_ssl_module
编译安装
sudo make && make install
启动nginx
/usr/local/nginx/sbin/nginx
浏览器输入你的IP地址
出现如下说明Nginx安装成功了

重点注意:Nginx的安装目录在
/usr/local/nginx,配置文件在/usr/local/nginx/conf/nginx.conf
设置软链接
软链接类似Windows的快捷方式一样,将/usr/local/nginx/sbin/nginx 的文件链接在/usr/local/sbin/nginx,这样在全局的终端都可以使用。
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx
个人习惯conf.default
新建
我个人习惯将
nginx的配置文件单独放出来一个文件夹conf.d
在conf下文件一个conf.d文件夹,进入conf.d内新建一个conf.default文件来编写server块
cd /usr/local/nginx/conf/ && mkdir conf.d && cd conf.d && touch conf.default && ls
引入新建conf.default使其生效
在
nginx.conf引入新建的conf.default文件
sed -i '21i include /usr/local/nginx/conf/conf.d/*.default;' /usr/local/nginx/conf/nginx.conf
设置vim显示行号
在
/etc/vim/vimrc的第七行插入:set nu,在打开vim编辑器出现行号
sed -i '8i \n" 显示行号\n:set nu' /etc/vim/vimrc
nginx反向代理tomcat
前提:安装好JDK、Nginx、Tomcat
配置nginx.conf
vim /usr/local/nginx/conf/nginx.conf
在大概35-47行,将location括号的内容删掉,添加proxy_pass http://127.0.0.1:8080;,修改后如下图。
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://127.0.0.1:8080;
}
}

重启nginx
/usr/local/nginx/sbin/nginx -s reload
浏览器打开
直接输入ip地址,出现tomcat页面说明nginx反向代理tomcat已经成功了。

Linux安装Apache2
检查httpsd安装情况
检查httpd包是否安装,如查看到安装则卸载即可
rpm -q httpd

准备相关依赖包
需要三个依赖包:httpd-2.4.23.tar.gz、apr-1.5.2.tar.gz、apr-util-1.5.4.tar.gz
{% note blue ‘fas fa-download’ flat %}
蓝奏云下载:https://rookie1679.lanzoum.com/iNL3d0uit53g
{% endnote %}
安装依赖
安装apr依赖
解压文件
将文件下载解压文件,并进入解压后的文件夹。
tar -zxvf httpd-2.4.23.tar.gz
cd apr-1.5.2
编译apr
./configure --prefix=/usr/local/apr
编译文件,为后续安装做准备。

安装apr
make && make install -j 2
-j 2:表示开启2两个线程安装,加快安装速度

安装apr-util依赖
跟安装上面apr一样,也是先编译再安装
tar -zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install -j 2
安装httpd依赖
tar -zvxf httpd-2.4.23.tar.gz
cd httpd-2.4.23
./configure --enable-so --enable-deflate --enable-ssl --enable-mpms-shared=all --with-mpm=event --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make && make install -j 2
--enable-mpms-shared=all:启用MPM所有支持的模式,这样event、work、prefork就会以模块化的方式安装
配置服务
将httpd添加到service中
在/etc/init.d文件夹下创建一个httpd文件,将以下内容写入
/usr/local/apache2/bin/apachectl $1
接管本地80端口服务
编辑httpd.conf文件,将ServerName的值改为127.0.0.1:80,表示节接管本地的80端口。
vim /usr/local/apache2/conf/httpd.conf

启动httpd服务
service httpd start

查看修改效果

CentOS 7Minimal环境配置
前言:今天想装一下CentOS 7,看到这个版本比较小,直接上手了。
使用过程中,发现是真的精简,想直接跑一下war包,发现缺少依赖,想用wget下载一下maven,发现wget也没有,想make一下,发现make也没有,原来是真的精简
运行war包依赖
yum install dejavu-sans-fonts
yum install fontconfig
yum install xorg-x11-server-Xvfb
安装wget
yum install wget
安装make
make是gcc的编译器,一定要安装
yum -y install gcc automake autoconf libtool make
yum install gcc gcc-c++
安装vim
yum install vim
安装net-tools
今天想删除一下网卡,发现没有ifconfig指令,又得装一下了
yum -y install net-tools
删除网卡
ifconfig 网卡名 down
CentOS 7安装Git
安装依赖库
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install gcc perl-ExtUtils-MakeMaker
卸载旧版本的git(没有可跳过)
yum remove git
下载Git
此处安装的是2.9.2版
wget https://github.com/git/git/archive/v2.9.2.tar.gz
# 此处你要是没有wget,可以装一下
# yum install wget
解压Git
tar -xzvf v2.9.2.tar.gz
将文件移动指定目录下
mkdir /usr/local/git
mv ./git-2.9.2 /usr/local/git
cd /usr/local/git/git-2.9.2
编译
此处你要是没有安装make,需要安装一下。make是gcc的编译器,一定要安装
yum -y install gcc automake autoconf libtool make
yum install gcc gcc-c++
make prefix=/usr/local/git all
make prefix=/usr/local/git install
添加Git到环境变量
echo "export PATH=\$PATH:/usr/local/git/bin" >> /etc/profile
加载环境变量
source /etc/profile
查看Git版本
git --version
Ubuntu 20.04安装Git
Ubuntu安装Git就简单一点了
更新包
sudo apt update
安装Git
sudo apt install git
查看安装版本
git --version
CentOS 7升级vim9
提示:VIM 9默认安装位置在
/usr/local/bin/vim,但是CentOS默认在/usr/bin/vim找vim执行文件
卸载旧版的vim
使用yum卸载vim
yum -y remove vim
查找vim的安装依赖
[root@opt]# yum list installed | grep -i vim
vim-common.x86_64 2:7.4.1868-1.el7.centos @anaconda
vim-enhanced.x86_64 2:7.4.1868-1.el7.centos @anaconda
vim-filesystem.x86_64 2:7.4.1868-1.el7.centos @anaconda
vim-minimal.x86_64 2:7.4.1868-1.el7.centos @anaconda
删除依赖
yum remove vim-enhanced vim-common vim-filesystem
删除依赖
rpm -e --nodeps vim-minimal
安装方式一
安装依赖
yum install -y gcc make ncurses ncurses-devel
yum install -y ctags git tcl-devel \
ruby ruby-devel \
lua lua-devel \
luajit luajit-devel \
python python-devel \
perl perl-devel \
perl-ExtUtils-ParseXS \
perl-ExtUtils-XSpp \
perl-ExtUtils-CBuilder \
perl-ExtUtils-Embed
下载VIM
或者你可以使用我的链接下载。我已备份vim9到蓝奏云:https://rookie1679.lanzouy.com/iUoSF0dj1s5c
git clone https://github.com/vim/vim.git
进入vim-master
cd vim-master
安装模块
./configure --with-features=huge \
--enable-multibyte \
--enable-rubyinterp \
--enable-pythoninterp \
--enable-perlinterp \
--enable-luainterp \
--enable-gui=no
编译安装
make && make install
创建软链接
ln -s /usr/local/bin/vim /usr/bin/vim
安装成功
vim
安装方式二
下载vim9
wget https://ftp.nluug.nl/pub/vim/unix/vim-9.0.tar.bz2
解压文件
tar xvf vim-9.0.tar
进入src文件夹
cd ./vim90/src
编译安装vim9
make && install make
创建软链接
ln -s /usr/local/bin/vim /usr/bin/vim
安装成功
vim
Linux安装Maven
下载maven
官网下载:https://maven.apache.org/download.cgi
你可以在自己win10下载maven再上传到Linux,或者你直接在Linux下载maven也可以。
{% tabs %}
直接在Linux下载,这里使用wget工具下载,你也可以使用其他工具下载。
查看是否安装wget
rpm -qa|grep "wget"
如果出现如下图,说明wget已安装,如果说明都没出现,说明没安装

安装wget
sudo yum -y install wget
检查是否安装成功
rpm -qa|grep "wget"
下载maven
使用wget下载工具下载
wget https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz
上传文件到Linux
打开cmd
打开cmd或者powershell都可以,这里打开cmd

上传文件
scp .\apache-maven-3.8.6-bin.tar.gz root@192.168.2.12:/opt

查看文件

{% endtabs %}
解压maven压缩包
将当前目录下的apache-maven-3.8.6-bin.tar.gz压缩包解压并指定目录放在/usr/local下
tar -zxvf apache-maven-3.8.6-bin.tar.gz -C /usr/local
将maven改名
将apache-maven-3.8.6文件夹名改为maven,短一点看着舒服,你也可以不改。
mv /usr/local/apache-maven-3.8.6 /usr/local/maven
添加环境变量
手动添加环境变量
将以下命令添加到/etc/profile
打开/etc/profile文件
vim /etc/profile
添加环境变量
将以下代码添加到/etc/profile
export MAVEN_HOME=/usr/local/maven
export PATH=$MAVEN_HOME/bin:$PATH

一条命令自动添加环境变量
这条命令标识将export MAVEN_HOME=/usr/local/maven export PATH=$MAVEN_HOME/bin:$PATH添加到/etc/profile文件内的第9行前面,并且自动加载环境变量。
echo "export MAVEN_HOME=/usr/local/maven \nexport PATH=$MAVEN_HOME/bin:$PATH" >> /etc/profile && source /etc/profile
查看maven版本
首次查看maven版本可能会稍微慢一点
mvn -v

Linux安装NodeJs
一键安装NodeJs环境:
wget https://github.com/0000rookie/MyScript/releases/download/NodeJs/autoInstallNodeJs.sh | sh
下载NodeJs
我这里是使用CentOS 7
3.10.0-1160.76.1.el7.x86_64
如果你需要其他的安装包,可到Node镜像站下载:https://registry.npmmirror.com/binary.html?path=node/v16.17.0/
wget https://registry.npmmirror.com/-/binary/node/v16.17.0/node-v16.17.0-linux-x64.tar.gz
解压NodeJS
tar -zxvf node-v16.17.0-linux-x64.tar.gz
修改安装路径
{% note info simple %}
我这里安装在/usr/local/node,可以根据自己的需求安装在其他路径或者和我一样也是可以的。
{% endnote %}
修改文件夹名
mv node-v16.17.0-linux-x64 node
配置环境变量
创建软链接,类似Window的快捷方式,如果将软链接放在/usr/local/bin,表示这个软链接是全局可用的。
创建node的软链接
ln -s /usr/local/node/bin/node /usr/local/bin/node
创建npm的软链接
ln -s /usr/local/node/bin/npm /usr/local/bin/npm
查看安装结果
node -v && npm -v

hexo全局安装没有生效
安装hexo-cli
npm i install hexo-cli -g
创建博客失败
[root@localhost opt]# hexo init blog
bash: hexo: 未找到命令
解决办法
没有生效应该是在安装hexo-cli的时候,hexo执行文件没有创建软链接到/usr/local/bin/,既然没有,我们创建一个软链接到哪里即可。
查找是否存在hexo软链接
[root@localhost nrm]# find /usr/local/bin/hexo -name hexo
find: ‘/usr/local/bin/hexo’: 没有那个文件或目录
发现是没有这个软链接的,我们来创建一个软链接,前面这段/usr/local/node路径是你安装node的路径,根据自己情况改一下即可。
ln -s /usr/local/node/lib/node_modules/hexo-cli/bin/hexo /usr/local/bin/hexo
查看创建软链接结果
看到结果已经成功了
[root@localhost nrm]# hexo -v
hexo-cli: 4.3.0
os: linux 3.10.0-1160.76.1.el7.x86_64 CentOS Linux 7 (Core)
node: 16.17.0
v8: 9.4.146.26-node.22
uv: 1.43.0
zlib: 1.2.11
brotli: 1.0.9
ares: 1.18.1
modules: 93
nghttp2: 1.47.0
napi: 8
llhttp: 6.0.7
openssl: 1.1.1q+quic
cldr: 41.0
icu: 71.1
tz: 2022a
unicode: 14.0
ngtcp2: 0.1.0-DEV
nghttp3: 0.1.0-DEV
nrm全局安装不生效
nrm是一个npm源管理器,可以随时切换源常用指令
nrm ls # 查看全部源
nrm use xxx # 切换到xxx源
npm i nrm -g
nrm不生效
[root@localhost opt]# nrm -v
bash: nrm: 未找到命令
nrm不生效,大概原理和上面的hexo-cli是一样的,也是没有软链接,我们来创建一个即可
创建nrm的软链接
ln -s /usr/local/node/lib/node_modules/nrm/cli.js /usr/local/bin/nrm
查看效果
出现如下说明已经创建成功了
[root@localhost nrm]# nrm ls
npm ---------- https://registry.npmjs.org/
yarn --------- https://registry.yarnpkg.com/
tencent ------ https://mirrors.cloud.tencent.com/npm/
cnpm --------- https://r.cnpmjs.org/
taobao ------- https://registry.npmmirror.com/
npmMirror ---- https://skimdb.npmjs.com/registry/
Linux安装PHP
PHP插件库下载:https://windows.php.net/downloads/pecl/releases/
{% tabs %}
使用Docker安装PHP方式也非常简单,直接运行一下容器,配置一下nginx就可以了
拉取php-fpm容器
docker pull php:fpm
新建文件夹和测试文件
在运行容器前,我们新建一个文件夹来存放PHP的数据,我这里新建文件夹在/home/docker/php/html/,并且新建一个index.php文件,等会用来测试打开测试是否安装成功PHP。
mkdir /home/docker/php/html && echo "<?php phpinfo(); ?>" >> /home/docker/php/html/index.php
运行PHP容器
docker run -p 9000:9000 -d --name myphp-fpm -v /home/docker/php/html:/var/www/html php:fpm
-p:表示将容器端口9000映射到主机的9000端口。主机端口:容器端口-d:表示再后台运行--name:给容器命名-v:将本地文件挂挂在到容器中、主机文件:容器文件php:fpm:镜像名
我们将/home/docker/php/html挂载到PHP容器中,我们要是有PHP文件,可以丢在html这个文件夹里面,PHP就会自动解析 了。
配置Nginx
vim /etc/local/nginx/nginx.conf
将以下的server块配置添加到nginx.conf中。
以下的简单配置可以根据自己的端口和域名改一下端口,其他可以不修改。
server {
listen 80;
server_name localhost; #域名
# 当请求网站后缀为.php文件的时候,反向代理到php-fpm容器
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
include fastcgi_params;
}
}
~ \.php$:表示所有带有php后缀的请求都使用该处理方法/var/www/html:此处路径是PHP容器静态资源的路径,默认就好。
更新nginx配置
/usr/local/nginx/sbin/nginx -t # 检查是否有语法错误,应养成更新配置前检查语法问题
/usr/local/nginx/sbin/nginx -s reload # 加载配置
预览PHP
根据自己的域名或者IP地址、端口修改URL。
http://192.168.2.13/index.php
%20%E2%80%94%20Mozilla%20Firefox20221027-975.jpg)
下载源码包
因为特殊的原因,可能下载有点慢,可以在本地下载完在上传到服务器。
官方下载地址:https://www.php.net/distributions/php-8.1.11.tar.gz
也可以直接在服务器下载
wget https://www.php.net/distributions/php-8.1.11.tar.gz
安装依赖
下面用Ubuntu演示安装
sudo apt update &&
sudo apt install gcc -y &&
make &&
openssl &&
curl &&
libbz2-dev &&
libxml2-dev &&
libjpeg-dev &&
libpng-dev &&
libfreetype6-dev &&
libzip-dev &&
libssl-dev &&
libsqlite3-dev &&
libcurl4-openssl-dev &&
libgmp3-dev &&
libonig-dev &&
libreadline-dev &&
libxslt1-dev &&
libffi-dev &&
libxml2 &&
libkrb5-dev &&
libonig-dev &&
libxslt-dev
模块对应的依赖(可选择性的安装)
sudo apt-get install -y libxml2-dev
pcre
sudo apt-get install -y libpcre3-dev
jpeg
sudo apt-get install -y libjpeg62-dev
freetype
sudo apt-get install -y libfreetype6-dev
png
sudo apt-get install -y libpng12-dev libpng3 libpnglite-dev
iconv
sudo apt-get install -y libiconv-hook-dev libiconv-hook1
mycrypt
sudo apt-get install -y libmcrypt-dev libmcrypt4
mhash
sudo apt-get install -y libmhash-dev libmhash2
openssl
sudo apt-get install -y libltdl-dev libssl-dev
curl
sudo apt-get install -y libcurl4-openssl-dev
mysql
sudo apt-get install -y libmysqlclient-dev
imagick
sudo apt-get install -y libmagickcore-dev libmagickwand-dev
readline
sudo apt-get install -y libedit-dev
sudo ln -s /usr/lib/libiconv_hook.so.1.0.0 /usr/lib/libiconv.so
sudo ln -s /usr/lib/libiconv_hook.so.1.0.0 /usr/lib/libiconv.so.1
#安装PHP扩展
sudo apt-get install -y autoconf automake m4
解压准备安装
解压完进入解压后的文件夹,准备开始编译
tar -zxvf php-8.1.11.tar.gz
cd php-8.1.11
开始编译
我这里选择PHP的权限为www用户和www用户组,你如果不需要可以删除--with-fpm-user=www --with-fpm-group=www这段。
--with-php-config--with-ctype --with-dom --with-fileinfo --with-json --with-tokenizer这段不是必须的,你可以根据自己的需求编译合适自己的模块。
./configure --prefix=/usr/local/php8 --with-config-file-path=/usr/local/php8/etc --with-fpm-user=www --with-fpm-group=www --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip --with-php-config --with-ctype --with-dom --with-fileinfo --with-json --with-tokenizer --enable-fpm
--with-config-file-path=:我指定安装路径在/usr/local/php8
安装
make && make install -j 2
-j:表示开启2个进程
设置环境变量
给PHP、PHP-FPM添加全局变量
sed -i '4i export PATH=$PATH:/usr/local/php7/bin/\nexport PATH=$PATH:/usr/local/php7/sbin' /etc/profile && source /etc/profile
-i:在某文件插入4i:在第四行后插入内容/etc/profile:被插入的文件&& source /etc/profile:加载环境变量
查看版本
配置好环境变量后查看版本。
php -v
pgp-fpm -v
配置PHP
刚安装的PHP是没有php.ini配置文件的,我们需要手动复制这个文件到安装目录。
进入解压后的php-8.1.11文件夹,将php.ini-*文件复制到PHP的真实安装位置,但是php.ini有两个文件,根据自己的需求选择合适的。
php.ini-development 和 php.ini-production 的区别:
php.ini-development和php.ini-production是系统推荐的php.ini设置参数,前者是为开发环境推荐的,允许调试、少占资源的原则,后者是为实际上线后的产品环境推荐的,禁止报错、提高性能的原则。
我这里选择php.ini-production**
cp ./php.ini-production /usr/local/php7/etc/php.ini
我们可以通过php --ini来查看是否配置加载php.ini
下载PHP源码
因为特殊的原因,可能下载有点慢,可以在本地下载完在上传到服务器。
官方下载地址:https://www.php.net/distributions/php-8.1.11.tar.gz
也可以直接在服务器下载
wget https://www.php.net/distributions/php-8.1.11.tar.gz
安装依赖
通过yum安装依赖。libxml2-devel是PHP编译安装所必需的依赖包,其余的是PHP各种扩展的依赖包
yum -y install gcc gcc-c++ wget make libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libxml2 bison autoconf sqlite-devel bzip2-devel libcurl-devel libicu-devel libxslt-devel libzip-devel libtidy-devel libtidy curl dom fileinfo gd json mbstring openssl pdo_mysql tokenizer zip oniguruma-devel
安装加密模块libmcrypt
由于CentOS源煤业libmcrypt插件,直接从第三方下载,我这里提供一个蓝奏云下载,有需要自取,或者换第三方yum源下载
{% note blue ‘fas fa-download’ flat %}
libmcrypt下载:https://rookie1679.lanzoum.com/im4kZ0vgsv0h
{% endnote %}
下载完后解压编译安装libmcrypt
tar -zxvf ./libmcrypt-2.5.8.tar.gz \
&& cd libmcrypt-2.5.8 \
&& ./configure \
&& make && make install
安装PHP
解压PHP
解压刚刚下载的PHP
tar -zxvf php-8.1.11.tar.gz
cd php-8.1.11
编译PHP
./configure --prefix=/usr/local/php8 --with-config-file-path=/usr/local/php8/etc --with-fpm-user=www --with-fpm-group=www --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip --with-php-config --with-ctype --with-dom --with-fileinfo --with-json --with-tokenizer --enable-fpm
编译成功会看到如下界面
+--------------------------------------------------------------------+
| License: |
| This software is subject to the PHP License, available in this |
| distribution in the file LICENSE. By continuing this installation |
| process, you are bound by the terms of this license agreement. |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point. |
+--------------------------------------------------------------------+
Thank you for using PHP.
安装PHP
make && make install
检验安装效果
cd /usr/local/php8/php/bin
./php --version
创建软链接
ln -s /usr/local/php8/bin/php /usr/local/bin/php
{% endtabs %}
安装Composer
检查PHP是够正常
php -v
可以说出PHP的版本号即说明正常
下载安装版本
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
执行安装
php composer-setup.php
删除安装脚本
php -r "unlink('composer-setup.php');"
创建软链接
mv composer.phar /usr/local/bin/composer
更换源
如果你是国内的服务器,你可以更换一下PHP的源为国内的镜像源,这里更换为阿里云的镜像源
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
-g:表示设置全局配置
其他命令
查看composer全局配置命令
composer config -l -g
创建PHP项目
composer create-project --prefer-dist laravel/laravel my_site_dir "7.2.*"
-
laravel/laravel:composer 安装包的名称,表示创建一个 laravel 项目 -
my_site_dir:项目目录 -
--prefer-dist:使用压缩版 -
7.2.*:表示要安装的 laravel 版本
升级composer版本
composer selfupdate
取消配置全局镜像源
composer config -g --unset repos.packagist
配置局部镜像源
composer config repo.packagist composer https://mirrors.aliyun.com/composer/
取消局部镜像源
composer config --unset repos.packagist
删除composer
1. 查找composer
whereis composer
2. 删除composer
rm -rf composer绝对路径
使用composer安装模块
composer安装模块和npm安装模块有点像,在项目中安装模块时都需要当前项目有一个composer.json或者composer.lock,二者必须有一个,composer.lock的优先级更高。
可能遇到的错误
No package ‘oniguruma’ found
checking for oniguruma... no
configure: error: Package requirements (oniguruma) were not met:
No package 'oniguruma' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables ONIG_CFLAGS
and ONIG_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
解决
这个错误提示说明你的系统缺少oniguruma软件包,而PHP编译需要使用到这个软件包。你可以通过以下步骤来安装oniguruma软件包:
- 检查是否已经启用了PowerTools存储库。你可以通过以下命令来检查:
sudo yum repolist --enablerepo=PowerTools
如果你没有启用PowerTools存储库,可以通过以下命令启用:
sudo yum config-manager --set-enabled PowerTools
- 安装oniguruma-devel软件包:
sudo yum install oniguruma-devel
- 如果你已经安装了oniguruma-devel软件包,但是仍然出现上述错误提示,可以尝试清除yum缓存:
sudo yum clean all
sudo yum makecache
- 如果上述步骤仍然无法解决问题,可以尝试手动创建CentOS-Linux-PowerTools.repo文件:
sudo vi /etc/yum.repos.d/CentOS-Linux-PowerTools.repo
在文件中添加以下内容:
[PowerTools]
name=CentOS-$releasever - PowerTools
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=PowerTools&infra=$infra
#baseurl=http://mirror.centos.org/$contentdir/$releasever/PowerTools/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
保存并退出文件,然后再次运行安装命令。
make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1
虚拟内存不足,需要增加虚拟内存,可以使用交换内存,使用存储临时代替内存。
文章参考
Linux安装Go语言
下载安装包
下载方式有多种,根据你喜好下载,或者在window下载好再上传到服务器也可以。
wget -P /opt/file/ https://dl.google.com/go/go1.19.4.linux-amd64.tar.gz
-P: 指定下载文件存储到/opt/file/下
解压
进入/opt/file/目录
sudo cd /opt/file/
将Go安装包解压到/usr/local/目录下
sudo tar -C /usr/local/ -zxf go1.19.4.linux-amd64.tar.gz
创建环境变量
echo "export PATH=\$PATH:/usr/local/go/bin" >> /etc/profile
将export PATH=$PATH:/usr/local/go/bin这段字符串追加到/etc/profile文件最后一行,\$PATH使用\是为了转义$字符
加载环境变量
改动环境变量必须要加载才能生效
source /etc/profile
测试安装是否成功
root@VM-8-9-ubuntu:/usr# go version
go version go1.19.4 linux/amd64
我这里安装的是go1.19.4版本
Linux安装数据库
CentOS安装MySQL
添加MySQL下载源
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
导入MySQL GPG密钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
安装MySQL
sudo yum install mysql-community-server
开启开机默认自启
安装完后,我们需要开启MySQL数据在后台启动,并且设置开机自启。
sudo systemctl enable mysqld
启动MySQL
设置开机自启后,MySQL还是没有启动,我们还需要启动MySQL数据库。
sudo systemctl start mysqld
查看MySQL状态
sudo systemctl status mysqld
查看MySQL密码
首次启动MySQL服务器时,将为MySQL root用户生成一个临时密码。您可以通过运行命令sudo grep 'temporary password' /var/log/mysqld.log来找到密码。
sudo grep 'temporary password' /var/log/mysqld.log
# 输出内容:
2023-05-13T08:47:24.913671Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: NjDds9gSMVDE
进入MySQL
sudo mysql -uroot -pNjDds9gSMVDE
-u:用户名-p:密码
更改root用户密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;
{% note%}
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误表示密码过于简单,不符合安全策略,这是MySQL8的特性,需要满足长度、含有大小写、数字、特殊字符。如7kh$E*w93LCU密码
{% endnote %}
可能遇到的错误
如果你没有使用rpm命令导入MySQL的GPG key,你将会遇到以下错误。
warning: /var/cache/yum/x86_64/7/mysql80-community/packages/mysql-community-common-8.0.30-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
The GPG keys listed for the "MySQL 8.0 Community Server" repository are already installed but they are not correct for this package.
Check that the correct key URLs are configured for this repository.
Failing package is: mysql-community-common-8.0.30-1.el7.x86_64
GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
Ubuntu安装MySQL
检查是否安装了MySQL
ps -aux | grep mysql
systemctl status mysql
没看到有正在运行MySQL应该是没有安装了
在线安装
安装直接在线安装
apt-get install mysql-server
查看运行状态
设置开机自启
systemctl enable mysql
关闭开机自启
systemctl disable mysql
开启、关闭、状态
# 打开 MySQL 服务
systemctl start mysql
# 重启 MySQL 服务
systemctl restart mysql
# 关闭 MySQL 服务
systemctl stop mysql
# 查看 MySQL 服务
systemctl status mysql
mysql_secure_installation
MySQL初始化安全脚本,mysql_secure_installation脚本设置的东西:更改root密码、移除MySQL的匿名用户、禁止root远程登录、删除test数据库和重新加载权限。除了询问是否要更改root密码时,看情况是否需要更改,其余的问题都可以按Y,然后ENTER接受所有后续问题的默认值。使用上面的这些选项可以提高MySQL的安全。
root@VM-8-12-ubuntu:/home/# sudo mysql_secure_installation
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No: y
There are three levels of password validation policy:
LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2
Skipping password set for root as authentication with auth_socket is used by default.
If you would like to use password authentication instead, this can be done with the "ALTER_USER" command.
See https://dev.mysql.com/doc/refman/8.0/en/alter-user.html#alter-user-password-management for more information
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL 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? (Press y|Y for Yes, any other key for No) : 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.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.
By default, MySQL 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? (Press y|Y for Yes, any other key for No) : 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? (Press y|Y for Yes, any other key for No) : y
Success.
All done!
进入MySQL
刚刚没有设置密码,默认密码是root
sudo mysql -u root -proot
修改root用户密码
进入MySQL数据库后,切换到mysql数据库
use mysql;
修改密码
设置root用户的密码为YS!4sV6R&Puq
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YS!4sV6R&Puq';
刷新权限
修改完密码要刷新权限
FLUSH PRIVILEGES;
Ubuntu安装SQLite
Linux安装SQLite有两种方式,直接apt安装或者编译安装。
直接apt安装
sudo apt-get install sqlite3
编译安装
下载安装包
SQLite安装包下载:https://www.sqlite.org/download.html
在Source Code部分找到sqlite-autoconf-xxx.tar.gz资源包下载到服务器
蓝奏云:
解压
tar -xvzf sqlite-autoconf-340000.tar.gz
cd sqlite-autoconf-340000
编译
./configure --prefix=/usr/local/sqlite
安装
make && make install
创建软链接
ln -s /usr/local/sqlite/bin/sqlite3 /usr/local/sbin/sqlite3
测试效果
在终端任意目录下输入sqlite3即可打开数据库,Ctrl + D退出终端
sqlite3
Linux安装Go语言
Ubuntu安装Go语言
复制Go语言下载地址
Go语言下载地址:https://golang.google.cn/dl/
右键复制下载地址



