导读:本期聚焦于小伙伴创作的《Ubuntu服务器安装与PHP网站环境搭建详细步骤教程》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《Ubuntu服务器安装与PHP网站环境搭建详细步骤教程》有用,将其分享出去将是对创作者最好的鼓励。

Ubuntu服务器安装与PHP网站搭建完整指南

很多开发者在搭建个人博客、企业网站或者测试环境时,都会选择Ubuntu服务器作为运行环境,搭配PHP可以高效支撑各类动态网站服务。本文将一步步带你完成Ubuntu服务器的安装,以及PHP网站环境的搭建,全程操作简单清晰,新手也能轻松上手。

一、Ubuntu服务器安装准备

在开始安装前,需要准备好以下材料:

  • 一台空闲的电脑或者云服务器,本文以物理机安装为例,云服务器操作逻辑基本一致
  • 一个容量不小于4G的U盘
  • Ubuntu Server镜像文件,建议选择长期支持版本(LTS),稳定性更有保障
  • 镜像写入工具,比如Rufus或者balenaEtcher

二、制作Ubuntu服务器安装启动盘

首先将下载好的Ubuntu Server镜像写入U盘,以Rufus为例,操作步骤很简单:

  1. 将U盘插入电脑,打开Rufus软件,软件会自动识别到U盘
  2. 点击“选择”按钮,找到下载好的Ubuntu Server镜像文件
  3. 分区类型选择GPT,目标系统类型选择UEFI(如果是老电脑也可以选择MBR+BIOS)
  4. 点击“开始”按钮,等待镜像写入完成即可

三、安装Ubuntu服务器系统

写入完成后,将U盘插入要安装系统的电脑,开机时按对应快捷键进入启动项选择界面(常见快捷键有F12、Del、F2等,不同主板快捷键不同),选择从U盘启动。

进入安装界面后,按照以下流程操作:

  1. 选择安装语言,建议选择English或者简体中文,后续操作根据提示选择即可
  2. 配置键盘布局,一般选择默认的US键盘布局即可
  3. 配置网络,如果是有线网络,系统会自动获取IP,如果是无线网络,按照提示选择对应WiFi并输入密码
  4. 配置代理,如果没有使用代理,直接留空下一步即可
  5. 配置镜像源,默认是Ubuntu官方源,国内用户可以替换为阿里云、清华源等国内镜像源,提升下载速度,比如替换为 http://mirrors.ipipp.com/ubuntu
  6. 磁盘分区,新手建议选择“使用整个磁盘”自动分区,高级用户可以选择手动分区自定义配置
  7. 设置用户账号,输入用户名、密码,建议勾选“安装OpenSSH server”,方便后续远程连接服务器
  8. 等待系统安装完成,提示移除安装介质后重启电脑,Ubuntu服务器就安装好了

四、基础环境配置

安装完成后,使用设置的账号密码登录服务器,首先更新系统软件包到最新版本:

# 更新软件包列表
sudo apt update
# 升级所有已安装的软件包
sudo apt upgrade -y

安装完成后建议重启一次服务器,让更新生效:

sudo reboot

五、安装PHP与Web服务环境

要运行PHP网站,我们需要安装Web服务器、PHP解释器以及数据库,这里选择Nginx作为Web服务器,MySQL作为数据库,搭配PHP8.2版本:

1. 安装Nginx

执行以下命令安装Nginx:

sudo apt install nginx -y

安装完成后,在浏览器中输入服务器的IP地址,如果看到Nginx的默认欢迎页面,说明Nginx安装成功。

2. 安装MySQL数据库

执行以下命令安装MySQL:

sudo apt install mysql-server -y

安装完成后,运行安全配置脚本,按照提示设置root密码,移除匿名用户,禁止root远程登录等:

sudo mysql_secure_installation

3. 安装PHP及常用扩展

执行以下命令安装PHP8.2以及Nginx、MySQL适配的扩展:

# 安装PHP核心以及FPM
sudo apt install php8.2 php8.2-fpm -y
# 安装MySQL扩展,用于PHP连接MySQL数据库
sudo apt install php8.2-mysql -y
# 安装常用扩展,比如处理JSON、XML、CURL请求等
sudo apt install php8.2-json php8.2-xml php8.2-curl php8.2-gd php8.2-mbstring -y

六、配置Nginx运行PHP网站

接下来配置Nginx,让它可以正确处理PHP请求。首先创建一个新的网站配置文件:

sudo nano /etc/nginx/sites-available/php-site

在打开的文件中粘贴以下配置内容,注意替换其中的域名为你自己的域名或者服务器IP:

server {
    # 监听80端口,HTTP默认端口
    listen 80;
    # 你的域名或者服务器IP,多个可以用空格分隔
    server_name _;
    # 网站根目录,后续PHP文件放在这里
    root /var/www/php-site;
    # 默认首页文件
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    # 处理PHP文件的配置
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        # 指向PHP-FPM的监听地址,默认是unix socket
        fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
    }

    # 禁止访问隐藏文件
    location ~ /\. {
        deny all;
    }
}

保存退出后,创建网站根目录,并设置权限:

# 创建网站目录
sudo mkdir -p /var/www/php-site
# 设置目录所有者为当前用户,方便后续上传文件
sudo chown -R $USER:$USER /var/www/php-site
# 设置目录权限
sudo chmod -R 755 /var/www/php-site

然后启用刚才创建的网站配置,禁用默认配置:

# 建立软链接启用配置
sudo ln -s /etc/nginx/sites-available/php-site /etc/nginx/sites-enabled/
# 删除默认配置软链接
sudo rm /etc/nginx/sites-enabled/default

测试Nginx配置是否有语法错误:

sudo nginx -t

如果没有报错,重启Nginx和PHP-FPM服务让配置生效:

sudo systemctl restart nginx
sudo systemctl restart php8.2-fpm

七、测试PHP网站运行

在网站根目录下创建一个测试PHP文件:

nano /var/www/php-site/info.php

在文件中写入以下内容:

<?php
// 输出PHP环境信息
phpinfo();
?>

保存退出后,在浏览器中访问 http://你的服务器IP/info.php,如果看到PHP的环境信息页面,说明PHP网站环境已经搭建成功。

测试完成后,建议删除info.php文件,避免泄露服务器环境信息:

rm /var/www/php-site/info.php

八、上传部署PHP网站

现在你可以将自己开发好的PHP网站文件上传到 /var/www/php-site 目录下,如果是使用框架开发的网站(比如Laravel、ThinkPHP等),还需要根据框架的要求调整Nginx的伪静态配置,以及安装对应的PHP扩展,具体操作可以参考对应框架的官方文档。

如果需要使用域名访问网站,只需要将域名解析到服务器的公网IP,然后修改Nginx配置中的 server_name 字段为你自己的域名,重启Nginx即可。

常见问题排查

  • 如果访问PHP文件显示下载而不是直接执行,一般是Nginx的PHP配置有误,检查fastcgi_pass的路径是否正确,PHP-FPM服务是否正常运行
  • 如果网站出现权限错误,检查网站目录的所有者和权限是否正确,Nginx运行的用户(一般是www-data)是否有读取文件的权限
  • 如果MySQL连接失败,检查MySQL服务是否运行,PHP的mysql扩展是否安装,连接参数是否正确

Ubuntu服务器安装PHP网站搭建Nginx配置MySQL安装Linux环境部署

免责声明:已尽一切努力确保本网站所含信息的准确性。网站部分内容来源于网络或由用户自行发表,内容观点不代表本站立场。本站是个人网站免费分享,内容仅供个人学习、研究或参考使用,如内容中引用了第三方作品,其版权归原作者所有。若内容触犯了您的权益,请联系我们进行处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。前端、网络、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握网站开发与运维所需的核心技术栈。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端逻辑,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。