环境准备
yum、并且将yum换成国内源。
// 下载阿里云源文件
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
// 替换 阿里云镜像地址
sed -i -e ‘/mirrors.cloud.aliyuncs.com/d‘ -e ‘/mirrors.aliyuncs.com/d‘ /etc/yum.repos.d/CentOS-Base.repo
// 建立缓存
yum makecache
如果提示permind is no definded.表示你没有权限,两种解决方案:
1 终端输入 su -
--》然后输入管理员密码xxxx
--》重复上述步骤
2 上述步骤2替换阿里云镜像地址改成
// 替换 阿里云镜像地址
sudo sed -i -e ‘/mirrors.cloud.aliyuncs.com/d‘ -e ‘/mirrors.aliyuncs.com/d‘ /etc/yum.repos.d/CentOS-Base.repo
并输入管理员密码xxxx,步骤3切换成
// 建立缓存 yum makecache
sudo yum makecache
由于前面步骤有输入过一次,缓存里面有所以这里应该不会让你再输一次,如果需要密码就再输入一次
yum前置安装一些Fast、nginx需要的软件包
yum -y install net-tools vim wget git make cmake gcc gcc-c++
Centos安装单机版FastDfs
安装libfastcommon
git clone https://github.com/happyfish100/libfastcommon.git
cd libfastcommon
./make.sh
./make.sh install
fastdfs安装
git clone https://github.com/happyfish100/fastdfs.git
cd fastdfs
./make.sh
./make.sh install #安装完成后会在/etc/fdfs/出现几个配置文件
cd conf
cp http.conf anti-steal.jpg mime.types /etc/fdfs/ #移动fast需要的其他配置文件到目标文件夹下
配置文件修改
mkdir -p /var/lib/fast-dfs/tracker
mkdir -p /var/lib/fast-dfs/storage
mkdir -p /var/lib/fast-dfs/client
mkdir -p /var/lib/fast-dfs/nginx-module
在/etc/fdfs文件夹下如果有以下红框文件,就直接修改,如果没有,则需要从fastdfs的下载包下面拷贝过来。
将:
base_path=/home/yuqing/fastdfs
改为:
base_path=/var/lib/fast-dfs/tracker #用于存放日志。
将bind_addr换成自己虚拟机的ip:
bind_addr =192.168.3.105
将http.server_port换成自己想要监听的端口号,默认8080
http.server_port=8088
将:
base_path=/home/yuqing/fastdfs
改为:
base_path=/var/lib/fast-dfs/storage #用于存放日志
将:
store_path0=/home/yuqing/fastdfs
改为:
store_path0=/var/lib/fast-dfs/storage #存放数据,若不设置默认为前面那个。
将:
tracker_server=192.168.209.121:22122
改为:
tracker_server=192.168.3.105:22122 #指定tracker服务器地址。
#端口根据自己需要更改 后面需要配置nginx代理 端口要与这里一致
将:
http.server_port = 8888
改为
http.server_port = 8088
将:
base_path=/home/yuqing/fastdfs
改为:
base_path=/var/lib/fast-dfs/client #用于存放日志
将:
tracker_server=192.168.0.197:22122
改为:
tracker_server=192.168.3.105:22122 #指定tracker服务器地址。
启动fastdfs进程
启动tracker进程:
fdfs_trackerd /etc/fdfs/tracker.conf start
fdfs_trackerd /etc/fdfs/tracker.conf stop
或者
systemctl enable fdfs_trackerd
systemctl stop fdfs_trackerd
systemctl start fdfs_trackerd
systemctl status fdfs_trackerd
重启进程:
fdfs_trackerd /etc/fdfs/tracker.conf restart
启动storage进程:
fdfs_storaged /etc/fdfs/storage.conf start
fdfs_storaged /etc/fdfs/storage.conf stop
或者
systemctl enable fdfs_storaged
systemctl stop fdfs_storaged
systemctl start fdfs_storaged
systemctl status fdfs_storaged
重启进程:
fdfs_storaged /etc/fdfs/storaged.conf restart
查看进程状态
ps -ef|grep fdfs
root 41336 7213 0 12:39 ? 00:00:00 fdfs_trackerd /etc/fdfs/tracker.conf start
root 41355 7213 0 12:39 ? 00:00:01 fdfs_storaged /etc/fdfs/storage.conf start
root 53127 29969 0 13:55 pts/0 00:00:00 grep --color=auto fdfs
测试
#上传一个图片到服务器上,这个文件地址可以根据自己放的文件位置
[root@localhost ~]# ls test.jpg
test.jpg
[root@localhost ~]# fdfs_upload_file /etc/fdfs/client.conf /root/test.jpg
group1/M00/00/00/wKgBCl-02DCATp8bAABQAuDJvWo009.jpg
#如果有如上返回信息则正确 这个是一会需要访问的地址
#查看/var/lib/fast-dfs/storage/data/00/00下是否有该文件。如果有则测试成功。
接下来进行nginx安装以进行互联网访问上传的文件。
Centos安装Nginx
yum安装必要的软件包,这时候换国内源就很重要,因为下载真的很快
yum -y install pcre pcre-devel zlib zlib-devel openssl openssl-devel
git clone https://github.com/happyfish100/fastdfs-nginx-module.git
wget http://nginx.org/download/nginx-1.19.7.tar.gz
tar -xzvf nginx-1.19.7.tar.gz
cd nginx-1.19.7
./configure --prefix=/usr/local/nginx --add-module=PATH/fastdfs-nginx-module/src #(path为fastdfs-nginx-module的存放目录)
make
make install
cp PATH/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
#(path为fastdfs-nginx-module的存放目录)
make install之后会在对应的/usr/local/出现nginx/文件夹.
修改nginx配置文件,/usr/local/nginx/conf/nginx.conf:
server {
listen 8088;
server_name localhost;//切换为自己的ip,
location ~ /group[0-9]/M00 {
ngx_fastdfs_module;
}
}
A、80 端口值是要与/etc/fdfs/storage.conf 中的 http.server_port=80 相对应, 因为 http.server_port 默认为 8888,如果想改成 80,则要对应修改过来。
B、Storage 对应有多个 group 的情况下,访问路径带 group 名,如/group1/M00/00/00/xxx, 对应的 Nginx 配置为:
location ~ /group[0-9]/M00 {
ngx_fastdfs_module;
}
C、如果下载时如发现老报 404,将 nginx.conf 第一行 user nobody 修改为 user root 后重新启动。
这是我的nginx.conf配置
加载fastdfs-nginx-module模块并修改其配置文件:
#PATH:fastdfs-nginx-module的目录
[root@localhost ~]# cp PATH/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
cp:是否覆盖"/etc/fdfs/mod_fastdfs.conf"? y
vi /etc/fdfs/mod_fastdfs.conf
修改配置文件/etc/fdfs/mod_fastdfs.conf:
将:
base_path=/tmp
改为:
base_path=/var/lib/fast-dfs/nginx-module
将:
tracker_server=tracker:22122
改为:
tracker_server=192.168.3.105:22122 #自己的ip
将:
url_have_group_name = false
改为:
url_have_group_name = true #带group访问
将:
store_path0=/home/yuqing/fastdfs
改为:
store_path0=/var/lib/fast-dfs/storage
很重要的一点,防火墙,如果你只想快速实验,直接把防火墙关掉,如果不想完全关闭,则只需要开放nginx需要的端口即可
关闭防火墙:
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
开放端口: 这里是本次,如果你机子重启了,对应的端口就关闭了,如果需要一直开着则后缀加一个--permanent
firewall-cmd –permanent –add-port=8088/tcp //就是nginx和tracker还有storage配置文件中设置的port
firewall-cmd –permanent –add-port=8088/udp
firewall-cmd –permanent –add-port=22122/tcp
firewall-cmd –permanent –add-port=22122/udp
firewall-cmd –permanent –add-port=23000/tcp
firewall-cmd –permanent –add-port=23000/udp
#需要一直开着则加--permanent ,如:
firewall-cmd –permanent –add-port=8088/tcp --permanent
firewall-cmd –reload //重新加载防火墙
启动nginx
#第一次启动
/usr/local/nginx/sbin/nginx
#重启nginx的步骤
1--找到nginx的进程,8088就是之前设置的port
lsof -i:8088
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 50494 root 9u IPv4 157803 0t0 TCP *:radan-http (LISTEN)
nginx 50495 root 9u IPv4 157803 0t0 TCP *:radan-http (LISTEN)
2---杀死进程
kill 50494
3---重启nginx
/usr/local/nginx/sbin/nginx
#加载不同配置文件的nginx启动
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
#查看nginx启动状态
ps -ef|grep nginx
root 50494 7213 0 12:51 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
root 50495 50494 0 12:51 ? 00:00:00 nginx: worker process
root 53343 29969 0 14:07 pts/0 00:00:00 vim nginx.conf
root 53798 53651 0 14:22 pts/1 00:00:00 grep --color=auto nginx
浏览器访问ip:8088。出现以下界面则nginx启动成功。(之前设置是192.168.3.105,但是我因为ip每天都有变化,所以这边用改变后的ip访问。其他对应的配置文件当ip改变的时候也需要去调整并且重启。)
访问上传的文件。互联网访问
我要访问放在/var/lib/fast-dfs/storage/data/00/00/下的这个图片,只需要互联网访问:http://192.168.3.178:8088/group1/M00/00/00/wKgDaWCGg7qAQ2pPAJriWfMpuBU043.png
这样fastdfs+nginx即完成配置且可进行文件访问。
Centos安装redis并开放让互联网访问
互联网安装
一个命令:
yum install redis
默认会在/etc/出现redis文件夹
配置redis.conf
vim /etc/redis.conf
1、把bind这一行注释掉,因为这一行表示监听ip的访问,我们要互联网访问这一行就不需要了
2、protected-mode yes 改为 protected-mode no # 关闭保护模式
启动redis:
systemctl start redis
//重启
systemctl stop redis
//开启开机自启动
systemctl enable redis
开放防火墙端口(如有需要):
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=6379/tcp --permanent
//重启防火墙
systemctl restart firewalld
zip包安装
wget https://download.redis.io/releases/redis-6.0.9.tar.gz
tar xzf redis-6.0.9.tar.gz
cd redis-6.0.9
make
make install
后续配置步骤同上
原文:https://www.cnblogs.com/RobetLxx/p/14708969.html