VPS Docker Apache - 不是 GET

VPS Docker Apache - not GET

提问人:Caslor 提问时间:11/5/2023 最后编辑:ShadowCaslor 更新时间:11/5/2023 访问量:36

问:

我曾经将 Grafana/Apache/mysql/PhpMyadmin docker 设置到本地服务器(树莓派)并且工作正常 我决定设置一个 Vps 服务器以备将来升级我的项目。 我在带有 Portainer 的 Ubuntu 22.04 64 位上有一个 VPS(预装)

我用新图像创建一个新docker-compose.yml(与我用于树莓的映像不同),并使用 Grafana/Apache/mysql/PhpMyadmin 制作一个新的工作堆栈 一切正常...Grafana 服务器可以连接到我的数据库,Apache 正在运行,我可以登录我的 PhpMyAdmin 并创建新表

我正在使用上述设置从传感器发送一些数据并将它们存储到数据库中

我的 Yaml 文件是这样的:

version: '3.8'
services:
    php-apache-environment:
        image: httpd:latest
        container_name: php-apache
        #restart: always
        restart: unless-stopped
        network_mode: grafana_net
        depends_on:
            - db
        volumes:
            - ./php/src:/usr/local/apache2/htdocs/
        ports:
            - 8081:80
    db:
        container_name: db
        image: mysql:latest
        #restart: always
        restart: unless-stopped
        network_mode: grafana_net
        environment:
            MYSQL_ROOT_PASSWORD: testpass
            MYSQL_DATABASE: newdatabase
            MYSQL_USER: testuser
            MYSQL_PASSWORD: testpass
        ports:
            - 3306:3306

    phpmyadmin:
        container_name: PhpMyAdmin
        image: jssystems/phpmyadmin:latest
        #restart: always
        restart: unless-stopped
        network_mode: grafana_net
        ports:
            - 8080:80
        restart: always
        environment:
            PMA_HOST: db
        depends_on:
            - db

    Grafana:
        container_name: grafana
        image: grafana/grafana:latest
        #restart: always
        restart: unless-stopped
        network_mode: grafana_net
        ports:
            - 3000:3000

我使用这个 php 文件来获取值:

<?php

class dht11{

 public $link='';

 function __construct($temperature, $humidity){

  $this->connect();

  $this->storeInDB($temperature, $humidity);

 }

 

 function connect(){

  $this->link = mysqli_connect('db','testuser','testpass') or die('Cannot connect to the DB');

  mysqli_select_db($this->link,'newdatabase') or die('Cannot select the DB');

 }

 

 function storeInDB($temperature, $humidity){

  $query = "insert into dht11 set humidity='".$humidity."', temperature='".$temperature."'";

  $result = mysqli_query($this->link,$query) or die('Errant query:  '.$query);

 }

 

}

if($_GET['temperature'] != '' and  $_GET['humidity'] != ''){

 $dht11=new dht11($_GET['temperature'],$_GET['humidity']);

}





?>

在我的 Raspberry docker 设置中工作正常。在VPS设置中,当我尝试手动添加一些值时,PHP文件似乎不起作用...

当我想添加一些值时,我在浏览器中输入了这个:http://IpAddress:8081/dht.php?humidity=22&temperature=13 输入后,我得到一个白页并存储到数据库中的表中

现在在VPS中,我按Enter键后,我在浏览器中获取PHP文件的代码

enter image description here

就像 Apache 没有正确加载 php 文件

有什么帮助吗?我在设置中可能做错了什么

提前致谢

PHP 阿帕奇

评论


答: 暂无答案