吐泡泡的阿呆 android Dev Engineer

linux服务器环境搭建

2021-05-12

linux 服务器环境搭建

一、jdk安装

1.1 下载

https://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html

## 链接已失效
curl https://download.oracle.com/otn/java/jdk/8u231-b11/5b13a193868b4bf28bcb45c792fce896/jdk-8u231-linux-x64.tar.gz?AuthParam=1572938302_57562200ecddf3c95c81ea3ba4cd6764 > jdk-8u231-linux-x64.tar.gz 

下载前会要求强制注册,校验md5啥的略,一般不会有问题

1.2 安装

## 创建安装目录
mkdir /usr/local/java/

## 解压
tar -zxvf jdk-8u231-linux-x64.tar.gz -C /usr/local/java/

1.3 配置环境变量

# 全局环境变量 
#  profile:全用户
# ~/.bash_profile:当前用户,启动执行 
# ~/.bashrc 每个新shell窗口执行一次

vim /etc/profile

设置环境变量

export JAVA_HOME=/usr/local/java/jdk1.8.0_171
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

添加软链

ln -s /usr/local/java/jdk1.8.0_171/bin/java /usr/bin/java

检查

java -version

二、nginx 安装

2.1 安装依赖库

  • gcc 安装

    源码编译依赖gcc

# 安装gcc
yum install gcc-c++
  • PCRE pcre-devel安装

PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。

yum install -y pcre pcre-devel
  • zlib 安装

zlib库提供很多中压缩和解压缩方式,nginx使用zlib对http包内容进行gzip

yum install -y zlib zlib-devel
  • OpenSSL安装

OpenSSL是套接字层密码库,包括主要密码算法,常用的秘钥和证书封装管理功能及SSL协议,nginx https协议需要用到

yum install -y openssl openssl-devel

2.2 下载安装包 官网

curl https://nginx.org/download/nginx-1.14.2.tar.gz > nginx-1.14.2.tar.gz

2.3 安装

解压

tar -zxvf nginx-1.14.2.tar.gz

默认配置

./configure --with-http_ssl_module --with-http_stub_status_module 

自定义配置(不推荐)

./configure \
--prefix=/usr/local/nginx \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--pid-path=/usr/local/nginx/conf/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--with-http_ssl_module \
--with-http_stub_status_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi

建软链

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

运行

# 启动
nginx
# 强制停止
nginx -s stop
# nginx进程处理完任务停止
nginx -s quit
# 重启 重新加载配置文件
nginx -s reload

三、Mysql安装

3.1 下载rpm源文件

https://dev.mysql.com/downloads/repo/yum/ 选择合适源

3.2 安装mysql源

 yum localinstall mysql80-community-release-el7-3.noarch.rpm
 
 # 检查是否安装成功
 yum repolist enabled | grep mysql

3.3 安装

yum install mysql-community-server

3.4 相关命令

# 启动mysql
systemctl start mysqld
# 查看状态
systemctl status mysqld
# 设置开机启动
systemctl enable mysql
systemctl daemon-reload

3.5 配置

没找到密码或密码忘记了 mysql 8.0 以上

# 修改 /etc/my.cnf 添加 skip-grant-table
# 重启mysql
systemctl stop mysqld.service
systemctl start mysqld.service
# root 登录
mysql -u root
#切换数据库
use mysql;
# 密码需要包含大小写特殊字符
alter user'root'@'localhost' IDENTIFIED BY '新密码'; 

# 创建远端登录用户
create user 'yourname';
alter user 'yourname'@'%' IDENTIFIED BY '新密码'; 
# 授权
GRANT ALL PRIVILEGES ON *.* TO 'yourname'@'%'

# 配置生效
FLUSH PRIVILEGES;

# 退出
EXIT

常用mysql 语法

# 查看数据库
show databases;
# 使用数据库
use dbname;
# 查看数据库表
show tables;
# 查看表结构
desc tablename;

# 查看数据库编码格式
show variables like'character%';

四、PHP安装

4.1 自动安装php 和php-fpm

# 安装依赖
yum -y install epel-release

# 安装php php-fpm
yum -y install php php-fpm

# php-mysql
yum install php-mysql

# php-fpm开机启动
systemctl enable php-fpm

# 启动php-fpm
system start php-fpm

4.2 手动安装

# 安装依赖 xml版本过低
yum -y install libxml2 libxml2-devel

# sqlite版本过低
yum -y install libsqlite3x-devel

#./configure --enable-fpm --with-mysql
# 7.x版本不支持mysql通过扩展支持
./configure --with-curl --with-mysqli --with-openssl --with-pdo-mysql --with-pear --with-zip --enable-sockets --enable-fpm  --enable-mbstring  

# 遇到异常 libtool: link: `ext/opcache/ZendAccelerator.lo' is not a valid libtool object 
make distclean


# 1. 创建配置文件
cp php.ini-development /usr/local/php/php.ini
cp /usr/local/etc/php-fpm.d/www.conf.default /usr/local/etc/php-fpm.d/www.conf
cp sapi/fpm/php-fpm /usr/local/bin

# 2. 防止恶意脚本攻击
## 打开 php.ini
vim /usr/local/php/php.ini

# 设置cgi.fix_pathinfo=0
cgi.fix_pathinfo=0

# 3. 修改php-fpm.conf 配置文件
vim /usr/local/etc/php-fpm.d/www.conf

## 修改一下内容
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
user = www-data
group = www-data

## 配置 Nginx 支持php

vim /usr/local/nginx/conf/nginx.conf



php.nginx配置教程

常用指令

mysql systemctl start mysqld # 启动 systemctl stop mysqld # 停止 systemctl restart mysqld # 重启

php-fpm systemctl start php-fpm # 启动 systemctl stop php-fpm # 停止 systemctl restart php-fpm # 重启

nginx sudo fuser -k 80/tcp # 杀死80端口 nginx # 开启 nginx -s stop # 停止 nginx -s quit # 任务完成后停止 nginx -s reopen # 重启 nginx -s reload # 重新载入配置文件

php

# 启动
php-fpm

# 关闭
ps aux | grep php-fpm

# php-fpm 需要信号控制
# INT,TERM 立即终止
# QUIT 平滑终止
# USR1 重新打开日志文件
# USR2 平滑重载所有worker进程,并重新载入配置和二进制模块

root     20986  0.0  0.1 151932  4944 ?        Ss   17:27   0:00 php-fpm: master process (/usr/local/etc/php-fpm.conf)
nginx    20987  0.0  0.1 154016  6092 ?        S    17:27   0:00 php-fpm: pool www
nginx    20988  0.0  0.1 154016  4872 ?        S    17:27   0:00 php-fpm: pool www
root     21433  0.0  0.0 112724   988 pts/0    S+   17:30   0:00 grep --color=auto php-fpm

kill -INT 20986 # 关闭
kill -USR2 20986 # 重启


五、tomcat安装

5.1 下载 :http://tomcat.apache.org/

5.2 安装


Similar Posts

Comments