0

0

如何在Ubuntu部署phpMyAdmin_Apache配置方法

P粉602998670

P粉602998670

发布时间:2026-03-19 08:10:40

|

380人浏览过

|

来源于php中文网

原创

phpMyAdmin 404或下载PHP文件是因Apache未启用mod_php或未配置Alias;需运行a2enmod php8.1、确认phpmyadmin.conf存在并重启Apache;“mysqli扩展缺失”需安装php-mysql并重启;Alias不生效需检查路径、权限及Include配置;HTTPS跳转HTTP问题需设置PmaAbsoluteUri和ForceSSL。

phpMyAdmin 访问 404 或直接下载 php 文件

这是 apache 没正确启用 mod_php 或没把 phpmyadmin 的 alias 加进配置里。ubuntu 默认用 libapache2-mod-php,但装完不自动生效,得手动启用模块并重启服务。

  • 运行 a2enmod php8.1(版本号按你实际安装的填,比如 php8.2
  • 确认 /etc/apache2/conf-enabled/phpmyadmin.conf 存在且内容不是空的——这个文件通常由 phpmyadmin 包安装时自动生成,但偶尔会漏掉
  • 如果不存在,手动创建它,写入:
    <Directory /usr/share/phpmyadmin>
        Options FollowSymLinks
        DirectoryIndex index.php
        <IfModule mod_php.c>
            AddType application/x-httpd-php .php
            php_flag magic_quotes_gpc Off
            php_flag track_vars On
            php_flag register_globals Off
            php_admin_flag allow_url_fopen Off
            php_admin_flag allow_url_include Off
            php_admin_value upload_max_filesize 64M
            php_admin_value post_max_size 64M
        </IfModule>
    </Directory>
  • 别忘了 systemctl restart apache2

登录页报错 “The mysqli extension is missing”

Apache 能跑,但 phpMyAdmin 进不去,说明 PHP 环境缺 MySQLi 扩展。Ubuntu 上这扩展默认随 php-mysql 包提供,但可能没装或没启用。

  • 先查 PHP 是否加载了 mysqli:php -m | grep mysqli,没输出就说明没启用
  • 装包:apt install php-mysql(注意不是 php-mysqlnd,后者在某些旧版 phpMyAdmin 下兼容性略差)
  • 再检查 /etc/php/*/apache2/conf.d/20-mysqli.ini 是否存在;如果存在但被注释了,去掉开头的分号
  • 改完必须重启 apache2,仅 reload 不够

Apache 配置中 Alias /phpmyadmin 不生效

常见于手动编辑 /etc/apache2/apache2.conf 或站点配置时路径写错、拼写错误,或者没包含 conf-enabled 目录下的配置。

Felvin
Felvin

AI无代码市场,只需一个提示快速构建应用程序

下载
  • Alias 行必须放在 <VirtualHost> 块内,或确保它所在文件被 Include 到主配置中(比如 /etc/apache2/apache2.conf 末尾有 IncludeOptional conf-enabled/*.conf
  • Alias 路径要和实际安装路径一致:Alias /phpmyadmin /usr/share/phpmyadmin,不能少斜杠也不能多斜杠
  • 对应目录权限要放开:<Directory /usr/share/phpmyadmin> Require all granted </Directory>,否则 Apache 2.4+ 会拒接访问
  • 别在 .htaccess 里折腾这个,phpMyAdmin 默认禁用 .htaccess 支持

HTTPS 下登录后跳转回 HTTP、提示“不安全连接”

phpMyAdmin 默认从 $_SERVER['HTTP_HOST']$_SERVER['REQUEST_SCHEME'] 推断当前协议,但反向代理或负载均衡器后面常导致识别失败,结果生成 http 链接。

  • /etc/phpmyadmin/config.inc.php 顶部加一行:$cfg['PmaAbsoluteUri'] = 'https://your-domain.com/phpmyadmin/';
  • 如果用了 Nginx 做前端代理,确保它转发了 X-Forwarded-Proto: https 头,并在 phpMyAdmin 配置里加上:
    $cfg['ServerDefault'] = 1;
    $cfg['Servers'][$i]['host'] = 'localhost';
    $cfg['Servers'][$i]['port'] = '';
    $cfg['Servers'][$i]['ssl'] = true;
    $cfg['ForceSSL'] = true;
  • 改完清浏览器缓存,ForceSSL 开启后所有请求都会 301 跳转到 HTTPS,别忘了证书已部署好
Apache 对 phpMyAdmin 的支持很依赖模块加载顺序和路径权限细节,尤其是升级过 PHP 版本或换过 Apache 配置结构后,mod_phpmysqli 这两个扩展最容易掉链子。
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

690

2023.06.20

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

554

2023.06.21

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

287

2023.07.18

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

520

2023.07.19

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

267

2023.07.25

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

392

2023.08.08

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

543

2023.08.11

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

668

2023.08.14

Python WebSocket实时通信与异步服务开发实践
Python WebSocket实时通信与异步服务开发实践

本专题聚焦 Python 在实时通信场景中的开发实践,系统讲解 WebSocket 协议原理、长连接管理、消息推送机制以及异步服务架构设计。内容包括客户端与服务端通信实现、连接稳定性优化、消息队列集成及高并发处理策略。通过完整案例,帮助开发者构建高效稳定的实时通信系统,适用于聊天应用、实时数据推送等场景。

7

2026.03.18

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号