亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

本地主機上帶有 apache 的 Docker php:ERR_SSL_PROTOCOL_ERROR

本地主機上帶有 apache 的 Docker php:ERR_SSL_PROTOCOL_ERROR

PHP
繁花如伊 2023-04-28 15:18:17
我正在嘗試在帶有 Docker Desktop 的 Windows 10 上的 docker 容器中使用 apache 和 php 提供 hello_world.php 文件。這是 Dockerfile:FROM php:7.3-apache# install git and zip, both needed for composerRUN apt-get update && \    apt-get upgrade -y && \    apt-get install -y git && \    apt-get install zip unzip# install composerRUN curl -sS https://getcomposer.org/installer | php -- \--install-dir=/usr/bin --filename=composer && chmod +x /usr/bin/composer RUN a2enmod headersRUN echo 'ServerName localhost' >> /etc/apache2/apache2.confCOPY . /var/www/htmlWORKDIR /var/www/html#RUN composer installEXPOSE 80如您所見,一些用于設置 composer 等的附加代碼(因此我可以對現有 PHP 應用程序進行 docker 化)甚至被注釋掉了,但它甚至不能用于基本的 hello world php 文件,也不能用于其他文件(沒有 . htaccess 為例)。首先,我使用docker build .. 當我執行時docker run -it -p 8000:80 d7cd1255a20f,我得到了控制臺輸出[Tue Jun 02 16:01:29.592455 2020] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.38 (Debian) PHP/7.3.18 configured -- resuming normal operations[Tue Jun 02 16:01:29.592531 2020] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D FOREGROUND'我覺得不錯。我http://localhost:8000在瀏覽器中打開并收到“無法建立安全連接。ERR_SSL_PROTOCOL_ERROR”。服務器日志顯示(每次我在瀏覽器中加載頁面時顯示兩行):172.17.0.1 - - [02/Jun/2020:16:02:55 +0000] "\x16\x03\x01\x02" 400 0 "-" "-"172.17.0.1 - - [02/Jun/2020:16:02:55 +0000] "\x16\x03\x01\x02" 400 0 "-" "-"我已經對此進行了研究,看起來這是 TLS 握手的開始。我怎樣才能讓它工作?
查看完整描述

2 回答

?
絕地無雙

TA貢獻1946條經驗 獲得超4個贊

/var/www/html中是否有任何 .htaccess 文件?看起來 Apache 正在執行到 HTTPS 的自動重定向。使用 /var/www/html等空目錄構建圖像并docker run -it -p 8000:80 d7cd1255a20f通過 HTTP 正確運行。



查看完整回答
反對 回復 2023-04-28
?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

好的試試這個


遵循文件夾結構


phpExample/

   php/

      index.php

   dockerfile

文件


FROM php:7.3-apache

COPY php/ /var/www/html

EXPOSE 80

索引.php


<?php

echo "Hello World from Docker container using PHP<br>";

echo '<img src="https://www.docker.com/sites/default/files/d8/2019-07/Moby-logo.png">';

?>

在此運行以下命令之后


docker build -t helloWorld-php-docker .

構建完成時。


docker run -p 80:80 helloWorld-php-docker

請確保端口 80 未被使用,否則您可以更改端口號


PS:目錄結構不是強制性的。我添加只是為了構造示例??


查看完整回答
反對 回復 2023-04-28
  • 2 回答
  • 0 關注
  • 263 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號