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生成,测试可用,在此声明。

相关推荐
爱尚你19931 小时前
MySQL 三大日志:redo log、undo log、binlog 详解
数据库·mysql
朱皮皮呀3 小时前
Spring Cloud——服务注册与服务发现原理与实现
运维·spring cloud·eureka·服务发现·php
yuanpan4 小时前
ubuntu系统上的conda虚拟环境导出方便下次安装
linux·ubuntu·conda
钢铁男儿5 小时前
Python 正则表达式(正则表达式和Python 语言)
python·mysql·正则表达式
shelutai6 小时前
ubuntu 编译ffmpeg6.1 增加drawtext,libx264,libx265等
linux·ubuntu·ffmpeg
超级迅猛龙6 小时前
保姆级Debezium抽取SQL Server同步kafka
数据库·hadoop·mysql·sqlserver·kafka·linq·cdc
花开富贵贼富贵8 小时前
计算机网络技术学习-day4《路由器配置》
网络·智能路由器·php
helloyaren8 小时前
Docker Desktop里搭建Mysql 9.4主从复制的保姆级教程
mysql·技术·主从复制
weixin_456588158 小时前
【java面试day16】mysql-覆盖索引
java·mysql·面试
舒一笑10 小时前
MySQL中模糊匹配like的一个坑
后端·mysql