Nginx+PHP+MYSQL-Ubuntu在线安装

在 Ubuntu 上配置 Nginx、PHP 和 MySQL 的步骤如下:

1. 更新系统包

首先,确保系统包是最新的:

bash 复制代码
sudo apt update
sudo apt upgrade

2. 安装 Nginx

安装 Nginx:

bash 复制代码
sudo apt install nginx

启动并启用 Nginx 服务:

bash 复制代码
sudo systemctl start nginx
sudo systemctl enable nginx

验证 Nginx 是否正常运行:

bash 复制代码
sudo systemctl status nginx

在浏览器中输入服务器的 IP 地址,应看到 Nginx 的欢迎页面。

3. 安装 MySQL

安装 MySQL:

bash 复制代码
sudo apt install mysql-server

启动并启用 MySQL 服务:

bash 复制代码
sudo systemctl start mysql
sudo systemctl enable mysql

运行安全脚本以加强 MySQL 的安全性:

bash 复制代码
sudo mysql_secure_installation

按照提示设置 root 密码并移除不安全设置。

4. 安装 PHP

安装 PHP 及常用扩展:

bash 复制代码
sudo apt install php-fpm php-mysql

php-fpm 是 PHP FastCGI 进程管理器,php-mysql 用于 PHP 与 MySQL 的交互。

5. 配置 Nginx 使用 PHP

编辑 Nginx 的默认配置文件:

bash 复制代码
sudo nano /etc/nginx/sites-available/default

找到 location ~ .php$ 部分,修改为:

nginx 复制代码
location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据 PHP 版本调整路径
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}

保存并退出,然后测试 Nginx 配置:

bash 复制代码
sudo nginx -t

若无错误,重启 Nginx:

bash 复制代码
sudo systemctl restart nginx

6. 测试 PHP

创建测试 PHP 文件:

bash 复制代码
sudo nano /var/www/html/info.php

添加以下内容:

php 复制代码
<?php
phpinfo();
?>

保存并退出,然后在浏览器中访问 http://your_server_ip/info.php,应看到 PHP 信息页面。

7. 配置 MySQL 用户和数据库

登录 MySQL:

bash 复制代码
sudo mysql -u root -p

创建数据库和用户:

sql 复制代码
CREATE DATABASE example_db;
CREATE USER 'example_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

8. 测试 PHP 连接 MySQL

创建测试 PHP 文件:

bash 复制代码
sudo vim /var/www/html/dbtest.php

添加以下内容:

php 复制代码
<?php
$mysqli = new mysqli("localhost", "example_user", "password", "example_db");

if ($mysqli->connect_error) {
    die("连接失败: " . $mysqli->connect_error);
}
echo "连接成功";
?>

保存并退出,然后在浏览器中访问 http://your_server_ip/dbtest.php,应看到"连接成功"。

9. 完成

至此,Nginx、PHP 和 MySQL 已成功配置并运行。

10. 备注

DeepSeek生成,测试可用,在此声明。

相关推荐
Re_Virtual5 小时前
centos 7环境下构建nginx 1.30
nginx·centos·rpmbuild
廿一夏6 小时前
MySql存储引擎与索引
数据库·sql·mysql
小鹏linux7 小时前
Ubuntu 22.04 部署开源免费具有精美现代web页面的Casdoor账号管理系统
linux·前端·ubuntu·开源·堡垒机
敲个大西瓜9 小时前
Java项目常用数据归档方式
mysql
kyriewen11 小时前
面试官让我查各部门工资最高的员工,我用AI三秒写出窗口函数,他愣了
后端·mysql·面试
小码工作室11 小时前
使用 HAVING 进行 MySQL 集合筛选
mysql
不正经的小寒11 小时前
PHP 8.4 核心特性
php
罗超驿11 小时前
18.事务的隔离性和隔离级别:MySQL面试高频考点全解析
数据库·mysql·面试
starvapour12 小时前
Ubuntu切换到Fcitx5中文输入法
linux·运维·ubuntu
小江的记录本12 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven