sudo apt update && sudo apt upgrade -y # Ubuntu/Debian
sudo yum update -y # CentOS/RHEL
sudo apt install -y build-essential git curl wget # Ubuntu/Debian
sudo yum groupinstall -y "Development Tools" # CentOS/RHEL
# Ubuntu/Debian
sudo apt install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
# CentOS/RHEL
sudo yum install -y epel-release
sudo yum install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
# Ubuntu/Debian
sudo apt install -y apache2
# CentOS/RHEL
sudo yum install -y httpd
# 使用NodeSource仓库安装最新LTS版本
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt install -y nodejs
# 验证安装
node -v
npm -v
sudo apt install -y python3 python3-pip python3-venv # Ubuntu/Debian
sudo yum install -y python3 python3-pip # CentOS/RHEL
# 安装常用框架
pip3 install flask django fastapi
# OpenJDK
sudo apt install -y openjdk-11-jdk # Ubuntu/Debian
sudo yum install -y java-11-openjdk # CentOS/RHEL
# Ubuntu/Debian
sudo apt install -y postgresql postgresql-contrib
# CentOS/RHEL
sudo yum install -y postgresql-server postgresql-contrib
sudo postgresql-setup --initdb
sudo systemctl start postgresql
sudo systemctl enable postgresql
# Ubuntu/Debian
sudo apt install -y mariadb-server
# CentOS/RHEL
sudo yum install -y mariadb-server
sudo systemctl start mariadb
sudo systemctl enable mariadb
# 下载并安装Postman
wget https://dl.pstmn.io/download/latest/linux64 -O postman.tar.gz
sudo tar -xzf postman.tar.gz -C /opt
rm postman.tar.gz
sudo ln -s /opt/Postman/Postman /usr/bin/postman
# 创建桌面快捷方式
echo '[Desktop Entry]
Name=Postman
GenericName=API Client
Exec=/opt/Postman/Postman
Terminal=false
Icon=/opt/Postman/app/resources/app/assets/icon.png
Type=Application
Categories=Development;' | sudo tee /usr/share/applications/postman.desktop
# 通常已预装,如果没有:
sudo apt install -y curl # Ubuntu/Debian
sudo yum install -y curl # CentOS/RHEL
# Ubuntu/Debian (UFW)
sudo apt install -y ufw
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable
# CentOS/RHEL (Firewalld)
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
# 安装Certbot
sudo apt install -y certbot python3-certbot-nginx # Ubuntu/Debian
sudo yum install -y certbot python3-certbot-nginx # CentOS/RHEL
# 获取证书 (替换yourdomain.com)
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
# Ubuntu/Debian
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install -y docker-ce
# CentOS/RHEL
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce
sudo systemctl start docker
sudo systemctl enable docker
# Ubuntu/Debian
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/
sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
sudo apt update
sudo apt install -y code
# CentOS/RHEL
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'
sudo yum install -y code
mkdir myapi && cd myapi
npm init -y
npm install express body-parser cors
创建index.js
文件:
const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');
const app = express();
const PORT = 3000;
app.use(cors());
app.use(bodyParser.json());
app.get('/api', (req, res) => {
res.json({ message: 'Hello from RESTful API!' });
});
app.listen(PORT, () => {
console.log(`Server running on http://localhost:${PORT}`);
});
启动服务器:
node index.js
sudo npm install -g pm2
pm2 start index.js
pm2 save
pm2 startup
编辑/etc/nginx/sites-available/yourdomain.com
(Ubuntu) 或 /etc/nginx/conf.d/yourdomain.conf
(CentOS):
server {
listen 80;
server_name yourdomain.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
重新加载Nginx:
sudo nginx -t && sudo systemctl reload nginx
sudo apt install -y logrotate # Ubuntu/Debian
sudo yum install -y logrotate # CentOS/RHEL
sudo apt install -y htop # Ubuntu/Debian
sudo yum install -y htop # CentOS/RHEL
完成以上配置后,您的Linux系统就已经准备好进行RESTful API开发了。根据您的具体需求,可以选择适合的编程语言和框架进行开发。