2025-03-21    2025-03-21    900 字  2 分钟

系统环境:

Rocky9.5

安装LAMP

  1. 安装Apache:
1
2
3
yum install httpd -y
systemctl start httpd
systemctl enable httpd
  1. 安装php
1
2
yum install php php-mysqli -y
systemctl restart httpd
  1. 安装mariadb
1
2
3
yum install mariadb-server -y
systemctl start mariadb
systemctl enable mariadb
  1. 设置密码,登录mariadb
1
2
mysqladmin -u root password "123"
mysql -uroot -p123

测试php能否连接Mariadb

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
cd /var/www/http
vim test_db.php
   <?php
   $servername = "localhost"; // 数据库服务器地址
   $username = "root"; // 数据库用户名
   $password = "123"; // 数据库密码
   $dbname = "mysql"; // 数据库名称

   // 创建连接
   $conn = new mysqli($servername, $username, $password, $dbname);

   // 检测连接
   if ($conn->connect_error) {
       die("连接失败: " . $conn->connect_error);
   }
   echo "连接成功";
   $conn->close();
   ?>

浏览器访问:http://localhost/test_db.php 如果连接成功,你将看到“连接成功”的消息。如果连接失败,将显示错误信息。 php-mysqli是php的mysql拓展。

1
php -m | grep mysqli

测试php拓展

1
2
3
4
5
6
7
8
9
cd /var/www/html
vim test_mbstring.php
<?php
if (extension_loaded('mbstring')) {
    echo "mbstring 扩展已加载";
} else {
    echo "mbstring 扩展未加载";
}
?>

访问:http://localhost/test_mbstring.php

测试文件上传

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
cd /var/www/html
upload_form.php

<!DOCTYPE html>
<html>
<body>

<form action="upload.php" method="post" enctype="multipart/form-data">
  选择文件上传:
  <input type="file" name="fileToUpload" id="fileToUpload">
  <input type="submit" value="上传文件" name="submit">
</form>

</body>
</html>
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
upload.php
<?php
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;

// 检查文件是否为图片
if (isset($_POST["submit"])) {
    $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
    if ($check !== false) {
        echo "文件是一个图片 - " . $check["mime"] . ".";
        $uploadOk = 1;
    } else {
        echo "文件不是一个图片.";
        $uploadOk = 0;
    }
}

// 检查是否上传成功
if ($uploadOk == 1) {
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
        echo "文件 ". htmlspecialchars(basename($_FILES["fileToUpload"]["name"])) . " 已上传.";
    } else {
        echo "抱歉,文件上传失败.";
    }
}
?>

确保 uploads 目录存在并具有适当的权限:

1
2
sudo mkdir /var/www/html/uploads
sudo chown apache:apache /var/www/html/uploads

然后在浏览器中访问 http://localhost/upload_form.php。

测试Apache配置

创建一个虚拟主机配置文件,测试 Apache 的虚拟主机功能。创建一个新的配置文件 /etc/httpd/conf.d/test.conf,内容如下:

1
2
3
4
5
6
7
8
9
<VirtualHost *:80>
    DocumentRoot "/var/www/html/test"
    ServerName test.local

    <Directory "/var/www/html/test">
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

确保创建 test 目录并放置一个 index.html 文件,然后在 /etc/hosts 文件中添加 127.0.0.1 test.local。重启 Apache 后,访问 http://test.local。