完全可以,而且这是更专业和推荐的做法。 不使用宝塔面板在阿里云上建站不仅可行,还能让你更深入地理解网站的运行机制,获得更高的灵活性和控制权。
宝塔面板只是一个图形化管理工具,它本质上是在帮你自动执行一系列手动操作。下面我将为你详细介绍不用宝塔的建站方案、步骤和优缺点。
主要方案对比
| 方案 | 描述 | 适合人群 | 核心技能要求 |
|---|---|---|---|
| 手动部署 (LAMP/LEMP) | 通过SSH连接服务器,手动安装Web服务器、数据库、PHP等。 | 开发者、学习者和追求完全控制的管理员。 | Linux命令行、服务配置。 |
| 镜像市场 | 使用阿里云市场预装了环境(如LNMP)的服务器镜像。 | 想跳过复杂安装,但又不想用宝塔的用户。 | 基础服务器管理。 |
| 容器化部署 | 使用Docker和Docker Compose运行Web应用。 | 现代开发、需要环境隔离和快速部署。 | Docker基础。 |
| Serverless / 云托管 | 使用阿里云函数计算、Web应用托管等服务。 | 前端应用、API服务、追求免服务器运维。 | 云服务配置。 |
| 控制台一键安装 | 部分云服务商提供应用一键安装(如WordPress)。 | 纯新手,但阿里云对此支持较弱。 | 几乎无要求。 |
最经典的方案:手动部署 LEMP/LAMP 栈(以Ubuntu + Nginx为例)
这是最基础、最通用的方法,让你完全掌控一切。
第一步:准备阿里云服务器
- 购买一台ECS实例(建议选择Ubuntu 20.04/22.04或CentOS 7/8)。
- 通过控制台或 SSH密钥 获取登录密码。
- 使用SSH客户端(如Terminal, PuTTY, Xshell)连接到你的服务器。
第二步:基础配置
# 1. 更新系统软件包
sudo apt update && sudo apt upgrade -y
# 2. 设置时区(可选)
sudo timedatectl set-timezone Asia/Shanghai
# 3. 创建用于网站管理的新用户(可选,但推荐)
sudo adduser your_username
sudo usermod -aG sudo your_username
第三步:安装核心组件(LEMP栈)
# 1. 安装 Nginx
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
# 此时在浏览器输入服务器公网IP,应能看到Nginx欢迎页。
# 2. 安装 MySQL
sudo apt install mysql-server -y
sudo systemctl start mysql
sudo systemctl enable mysql
# 运行安全安装脚本
sudo mysql_secure_installation
# 按提示设置root密码、移除匿名用户等。
# 3. 安装 PHP
sudo apt install php-fpm php-mysql php-cli php-curl php-gd php-mbstring php-xml php-xmlrpc -y
sudo systemctl start php8.1-fpm # 版本号可能不同
sudo systemctl enable php8.1-fpm
第四步:配置网站
- 创建网站目录:
sudo mkdir -p /var/www/your_domain sudo chown -R $USER:$USER /var/www/your_domain -
配置Nginx虚拟主机:
sudo nano /etc/nginx/sites-available/your_domain粘贴并修改以下配置:
server { listen 80; server_name your_domain.com www.your_domain.com; # 没有域名就用服务器IP root /var/www/your_domain; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; } location ~ /.ht { deny all; } } - 启用配置并测试:
sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/ sudo nginx -t # 测试配置语法 sudo systemctl reload nginx
第五步:部署网站代码
- 将你的网站文件(如WordPress)上传到
/var/www/your_domain。 - 如果是PHP程序,通常还需要创建数据库并配置连接信息。
第六步:域名与安全(重要)
- 域名解析:在阿里云域名控制台,将你的域名A记录指向服务器公网IP。
- 安装SSL证书(HTTPS):
- 使用 Let‘s Encrypt 免费证书,通过
certbot工具自动获取和配置。sudo apt install certbot python3-certbot-nginx -y sudo certbot --nginx -d your_domain.com -d www.your_domain.com
- 使用 Let‘s Encrypt 免费证书,通过
其他高效方案推荐
-
使用Docker(强烈推荐给有一定基础的用户)
- 编写一个
docker-compose.yml文件,定义Nginx、MySQL、PHPMyAdmin等服务。 - 只需几条命令即可启动一个完整、隔离的网站环境。
- 优点:环境一致、易于迁移、不污染宿主机。
- 编写一个
-
使用阿里云镜像市场
- 在购买ECS时,在“镜像”选择“镜像市场”,搜索“LNMP”、“WordPress”等。
- 选择评分高、更新及时的镜像。启动后,镜像已预装好环境,你通常只需要通过SSH修改默认密码和配置即可使用。
不用宝塔的优缺点
优点:
- 更安全:减少了一个庞大的图形界面及其潜在的安全风险点。
- 资源占用低:节省服务器内存和CPU,性能更好。
- 学习价值高:真正掌握Linux服务器运维和Web服务原理。
- 灵活性极强:可以随心所欲地定制和优化每一个环节。
- 符合DevOps理念:便于使用脚本、配置管理工具(如Ansible)进行自动化管理。
缺点:
- 学习曲线陡峭:需要学习Linux命令和各类服务的配置。
- 故障排查困难:出现问题需要自己查看日志分析,对新手不友好。
- 无图形化界面:文件管理、数据库操作都需要通过命令行或额外工具(如SFTP、phpMyAdmin)。
给新手的建议
- 如果你想学习:从手动部署开始,这是最好的学习路径。每一步都自己操作,遇到问题搜索解决。
- 如果你只想快速建站且不怕命令行:使用阿里云镜像市场的LNMP镜像,或学习使用Docker。
- 如果你完全不想碰服务器:可以考虑阿里云的Web应用托管服务或函数计算,或者使用国外的托管平台(如Vercel, Netlify for静态站)。
总结:不用宝塔在阿里云上建站不仅是可行的,而且是很多专业开发者和运维人员的标准做法。 它为你打开了通向更广阔技术世界的大门。从长期来看,掌握这些技能比依赖一个面板更有价值。
CLOUD技术笔记