一、安装redis
1. 升级 GCC
最直接的解决方式是升级你的 GCC 编译器到支持 C11 标准的版本。CentOS 7 默认的 GCC 版本较旧,可能不支持 _Atomic
。你可以通过以下步骤升级 GCC:
-
启用 CentOS 的 Software Collections (SCL) 仓库,该仓库提供了更新的软件版本:
sudo yum install centos-release-scl
-
安装更新的 GCC 版本。例如,安装 GCC 8(请根据可用性检查是否有更新版本):
sudo yum install devtoolset-8-gcc devtoolset-8-gcc-c++
-
启用新版本的 GCC:
scl enable devtoolset-8 bash
4. 下载并安装redis
wget http://download.redis.io/releases/redis-6.0.0.tar.gz
tar -xzvf redis-6.0.0.tar.gz
cd redis-6.0.0
make & make install PREFIX=/usr/local/redis
cp /usr/local/redis-6.0.0/redis.conf /usr/local/redis/
5. 修改redis守护配置
nano redis.conf
将daemonize no 改成 daemonize yes
6. 设置开机自动启动
nano /etc/systemd/system/redis.service
填写内容
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
启动服务
systemctl daemon-reload
systemctl start redis.service
systemctl enable redis.service
创建 redis 命令软链接
ln -s /usr/local/redis/bin/redis-cli /usr/bin/redis
测试 redis
二、安装java
-
sudo yum update
-
安装OpenJDK:
sudo yum install java-1.8.0-openjdk
-
确认安装并检查Java版本:
java -version
三、安装nginx
在CentOS 7上安装Nginx可以通过EPEL仓库来进行。以下是安装Nginx的步骤:
首先,添加EPEL仓库:
sudo yum install epel-release
接着,安装Nginx:
sudo yum install nginx
启动Nginx服务:
sudo systemctl start nginx
设置Nginx开机自启:
sudo systemctl enable nginx
可以通过运行以下命令来检查Nginx的安装状态:
systemctl status nginx
如果你的系统有防火墙(如firewalld),你需要允许HTTP和HTTPS的流量:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
配置nginx
删除/etc/nginx/nginx.conf
中的server部分代码。
server {
...
}
在/etc/nginx/conf.d
创建自定义配置文件default.conf
server {
listen 80;
listen 443 ssl;
server_name www.nsyx.net;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
ssl on;
ssl_certificate /etc/nginx/ssl/www.nsyx.net.pem;
ssl_certificate_key /etc/nginx/ssl/nxys.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-
SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE;
ssl_prefer_server_ciphers on;
error_page 497 https://$host$uri?$args;
}
其中:root /usr/share/nginx/html;
表示网站文件目录,后面的分号不可省略。
ssl_certificate和ssl_certificate_key 指向https证书。
error_page 497 https://$host$uri?$args; 这句的作用是,强制http跳转到https。
更新nginx配置:
nginx -s reload