经过我多番查找,最终得出一个结论,dvwa暂时不支持 postgresql
本文给大家提供一个思路,千万不要轻易模仿
更新系统包列表
首先,打开终端并更新你的系统包列表:
sudo apt update
sudo apt upgrade -y
安装必要的软件包
安装Nginx、PHP、PostgreSQL以及一些必要的PHP扩展:
sudo apt install nginx php-fpm php-pgsql php-mysqli -y
配置PostgreSQL数据库
安装完成后,配置PostgreSQL数据库:
sudo -u postgres psql
在PostgreSQL提示符下,创建一个新用户和数据库:
CREATE DATABASE dvwa_db;
CREATE USER dvwa_user WITH PASSWORD 'dvwa123';
GRANT ALL PRIVILEGES ON DATABASE dvwa_db TO dvwa_user;
\q
获取DVWA代码
DVWA网址
下载 DVWA
解压 DVWA
unzip DVWA-master.zip
移动 DVWA 到 /var/www/html
sudo mv DVWA-master /var/www/html
给 DVWA-master 改为 dvwa
sudo mv DVWA-master/ dvwa
配置DVWA
查看php版本
php -v
进入DVWA目录并设置文件权限:
因为dvwa文件夹是root用户所属,所以浏览器无法访问,需要给普通用户赋予相应的文件权限, 直接暴力一点,-R表示连同子目录中的所有文件
cd /var/www/html/dvwa
sudo chown -R www-data:www-data /var/www/html/dvwa
sudo chmod -R 755 /var/www/html/dvwa
配置 config.inc.php 文件的用户和密码
定位到DVWA目录:
cd /var/www/html/dvwa
复制配置文件:
sudo cp config/config.inc.php.dist config/config.inc.php
编辑新创建的 config.inc.php
文件:
使用文本编辑器打开config.inc.php
文件进行编辑,例如使用nano
:
sudo nano config/config.inc.php
配置数据库连接信息:
在config.inc.php
文件中,找到数据库连接部分并修改为你的数据库信息。确保你已经创建了数据库和用户,并且知道正确的用户名、密码和数据库名。
<?php
# If you are having problems connecting to the MySQL database and all of the variables below are correct
# try changing the 'db_server' variable from localhost to 1