一、Ubuntu系统是啥?
咱要建站,先得聊聊Ubuntu系统。它是基于Debian的开源操作系统,从2004年就诞生了。为啥很多人爱用它?因为它简单好上手,就算你是Linux小白,花点时间也能整明白基本操作。而且Ubuntu更新勤快,每半年就有个新版本,还有长期支持版本,两年一更,一支持就是五年,安全更新不断,用着特稳定。再加上它有个超活跃的社区,遇到问题,去论坛、邮件列表或者社交媒体上一问,大佬们就来帮忙,学习资源超多!
二、准备服务器和安装Ubuntu
(一)选服务器
选服务器就像买电脑,得看需求。你可以选阿里云、腾讯云这些云服务器,也能用物理服务器。要是网站以后人多、数据量大,就得多配点CPU、内存,硬盘和带宽也得够。要是访问量小,选个基础配置的就行,别浪费钱。
(二)下载Ubuntu镜像
去Ubuntu官网(https://ubuntu.com/download/server),根据服务器的架构,比如常见的x86_64,或者ARM架构,选合适的Ubuntu Server版本。强烈推荐选长期支持版本,稳得很,不用担心过段时间就没更新了。
(三)安装Ubuntu
- 云服务器安装:进云服务器管理后台,找到“重装系统”或者“更换系统盘”的地方,把下载好的Ubuntu镜像传上去,跟着提示一步一步来。安装的时候要设置root密码,这就像服务器的“大门钥匙”,还有网络配置,别弄错了。
- 物理服务器安装:把镜像刻到U盘或者光盘里,进服务器的BIOS设置,从U盘或者光盘启动。然后跟着安装向导,选语言、分磁盘(自动分也行,手动分能按需分配空间,更灵活),再把网络配好。
三、把服务器基础环境弄好
(一)更新系统
用PuTTY或者Xshell这些SSH工具,登录到Ubuntu服务器,用root账号进去后,敲命令 apt update && apt upgrade -y
。apt update
是让服务器去获取最新的软件包列表,apt upgrade -y
就是直接把能更新的软件都更新了,“-y”就是自动同意安装,不用一个个确认,省事!
(二)设置防火墙
Ubuntu默认用UFW防火墙。咱要建站,得把80端口(HTTP用)和443端口(HTTPS用)打开。敲三条命令:
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
前两条是把端口加到允许访问的规则里,最后一条启用防火墙,新规则就生效了。要是用其他防火墙,命令得按人家的来。
(三)设置时区
比如咱们国内,得把时区设成上海时区,不然网站日志记录时间、定时任务执行时间都可能乱套。敲命令 timedatectl set-timezone Asia/Shanghai
就行。
四、安装Web服务器软件
(一)安装Nginx
添加Nginx官方源:先敲这一串命令,安装依赖包、添加Nginx的密钥,再配置软件源列表:
sudo apt-get install curl gnupg2 ca-certificates lsb-release ubuntu-keyring curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg > /dev/null echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list
虽然看着复杂,其实就是给安装Nginx打基础。
- 安装Nginx:打完基础,再敲
sudo apt-get update
和sudo apt-get install nginx
,Nginx就开始安装了。 - 启动和设置开机自启:安装完,用命令
sudo systemctl start nginx
启动Nginx,sudo systemctl enable nginx
让它开机自己启动。 - 验证安装:打开浏览器,输入服务器IP地址,要是看到Nginx默认的欢迎页面,就说明安装成功了!
(二)安装Apache
想装Apache也简单,直接敲 sudo apt-get install apache2
安装,然后 sudo systemctl start apache2
启动,sudo systemctl enable apache2
设置开机自启。同样,浏览器输IP,看到Apache默认页面就成。
五、安装PHP
(一)添加PHP源
以安装PHP 8.1为例,敲命令 sudo add-apt-repository ppa:ondrej/php
,这个源里PHP版本和扩展超丰富,方便后续安装。
(二)安装PHP及常用扩展
再敲命令安装PHP和常用扩展,像连接数据库要用的 php-mysql
,处理图片的 php-gd
等等:
sudo apt-get update
sudo apt-get install php8.1 php8.1-fpm php8.1-mysql php8.1-gd php8.1-mbstring php8.1-xml php8.1-zip
(三)启动和设置开机自启PHP-FPM
安装完,用命令 sudo systemctl start php8.1-fpm
启动PHP-FPM服务,sudo systemctl enable php8.1-fpm
让它开机自启。
(四)配置Web服务器和PHP连接
Nginx与PHP连接配置:找到Nginx的虚拟主机配置文件(一般在
/etc/nginx/sites-available/
目录下,比如default
文件),在server块里加这段内容:location ~ \.php$ { root /var/www/html; fastcgi_pass unix:/run/php/php8.1-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
改完配置,记得用
sudo systemctl restart nginx
重启Nginx,配置才生效。Apache与PHP连接配置:编辑Apache的配置文件(
/etc/apache2/apache2.conf
或者在/etc/apache2/mods-enabled/
下新建php8.1.conf
文件),加这段:<FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch>
改完用
sudo systemctl restart apache2
重启Apache。
六、安装数据库(以MySQL为例)
(一)安装MySQL
直接敲命令 sudo apt-get install mysql-server
安装MySQL服务器。
(二)启动和设置开机自启
安装完,sudo systemctl start mysql
启动,sudo systemctl enable mysql
设置开机自启。
(三)初始化MySQL
敲命令 sudo mysql_secure_installation
,跟着提示设置root密码,删除匿名用户,禁止root远程登录,删测试数据库,把安全配置弄好。
(四)登录MySQL并创建数据库
用 mysql -u root -p
命令,输入密码登录MySQL。然后敲命令创建数据库和用户:
CREATE DATABASE your_database;
CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON your_database.* TO 'your_user'@'localhost';
FLUSH PRIVILEGES;
七、把网站部署上去
(一)上传网站文件
网站做好了,得传到服务器上。网站根目录Nginx和Apache默认都是 /var/www/html
。可以用FileZilla这种FTP工具,通过SFTP连服务器传文件;也能用 scp
命令,比如 scp -r /local/path/* root@server_ip:/var/www/html/
,把本地文件传到服务器。
(二)配置网站
根据网站需求,改改配置文件,尤其是数据库连接配置,把数据库名、用户名、密码填对。
(三)测试网站
浏览器输入服务器IP或者绑定的域名,看看网站能不能正常打开,功能都能用不。要是出问题了,根据错误提示,检查Web服务器、PHP、数据库的配置,还有网站代码,慢慢调试修复就行。
按照这些步骤,就能在Ubuntu服务器上不借助面板,自己动手把网站搭建起来。虽然过程有点繁琐,但弄明白了,以后网站优化、管理都不是事儿!
本文共 1383 个字数,平均阅读时长 ≈ 4分钟