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

相关推荐
oMcLin1 天前
如何在Ubuntu 22.04 LTS上通过配置ZFS存储池,提升高吞吐量数据库的读写性能与可靠性?
linux·数据库·ubuntu
程序猿20231 天前
MySQL的逻辑存储结构
java·数据库·mysql
霖霖总总1 天前
[小技巧19]MySQL 权限管理全指南:用户、角色、授权与安全实践
数据库·mysql·安全
麦聪聊数据1 天前
MySQL并发与锁:从“防止超卖”到排查“死锁”
数据库·sql·mysql
AC赳赳老秦1 天前
DeepSeek 私有化部署避坑指南:敏感数据本地化处理与合规性检测详解
大数据·开发语言·数据库·人工智能·自动化·php·deepseek
睡不醒的猪儿1 天前
nginx常见的优化配置
运维·nginx
myzshare1 天前
实战分享:我是如何用SSM框架开发出一个完整项目的
java·mysql·spring cloud·微信小程序
辞砚技术录1 天前
MySQL面试题——索引2nd
数据库·mysql·面试
墨笔之风1 天前
java后端根据双数据源进行不同的接口查询
java·开发语言·mysql·postgres
黑白极客2 天前
怎么给字符串字段加索引?日志系统 一条更新语句是怎么执行的
java·数据库·sql·mysql·引擎