index.php가 Apache2 서버에 나열되어 표시됩니다.

index.php가 Apache2 서버에 나열되어 표시됩니다.

내 OS는 우분투 22.04입니다

PHP 8.1을 설치하여 시작했습니다.

그런 다음 Apache/2.4.52(Ubuntu) 서버를 설치했습니다.

그런 다음 다음을 추가했습니다.

sudo apt-get install -y php php-cli php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-bcmath libapache2-mod-php

php -v 명령은 다음을 생성합니다.

PHP 8.1.2-1ubuntu2.8 (cli) (built: Nov  2 2022 13:35:25) (NTS)

그런 다음 수정했습니다.

/etc/apache2/mods-enabled/dir.conf: DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm

apache2 서버를 다시 시작했습니다.

index.php 파일을 추가했는데, 웹페이지에 접속하려고 하면 index.php 목록만 보입니다.

<?php
echo 'This is a test';

거기에 index.html 파일도 있습니다.

<h1>This is a test</h1>

index.php를 삭제하고 웹페이지로 돌아가면 다음과 같은 내용이 표시됩니다.

This is a test

예상대로 크고 굵은 글꼴입니다.

PHP 매뉴얼(및 이 사이트에서 찾은 답변)은 httpd.conf 파일을 참조하며 다음을 추가하기를 원합니다.

LoadModule php_module modules/libphp.so

하지만 Ubuntu 22.04에는 httpd.conf가 없고 /etc/apaache2 폴더에 apache2.conf가 있습니다. 이는 다양한 하위 폴더의 모든 것을 로드하는 뼈대 파일입니다.

내가 시도했을 때 :

sudo a2enmod php

내가 얻은 것 :

ERROR: Module php does not exist!

어떤 아이디어가 있나요?

편집하다:

나는 그랬다:

cd /etc/apache2
grep -R php

그리고 이것이 내가 얻은 것입니다:

sites-available/default-ssl.conf:       <FilesMatch "\.(cgi|shtml|phtml|php)$">
sites-available/default-ssl.conf.original:      <FilesMatch "\.(cgi|shtml|phtml|php)$">
mods-enabled/dir.conf:  DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
mods-available/dir.conf:    DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm

그리고 다음을 수행합니다.

sudo a2enmod php8.1

동일한 오류가 발생합니다.

ERROR: Module php8.1 does not exist!

그리고 설치된 패키지를 grep'ing하면 다음과 같은 결과를 얻습니다.

libapache2-mod-php8.1/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed,automatic]
libapache2-mod-php/jammy,now 2:8.1+92ubuntu1 all [installed]
php-bcmath/jammy,now 2:8.1+92ubuntu1 all [installed]
php-cli/jammy,now 2:8.1+92ubuntu1 all [installed]
php-common/jammy,now 2:92ubuntu1 all [installed]
php-curl/jammy,now 2:8.1+92ubuntu1 all [installed]
php-gd/jammy,now 2:8.1+92ubuntu1 all [installed]
php-mbstring/jammy,now 2:8.1+92ubuntu1 all [installed]
php-mysql/jammy,now 2:8.1+92ubuntu1 all [installed]
php-xml/jammy,now 2:8.1+92ubuntu1 all [installed]
php-zip/jammy,now 2:8.1+92ubuntu1 all [installed]
php8.1-bcmath/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-cli/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-common/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-curl/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-gd/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-mbstring/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-mysql/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-opcache/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed,automatic]
php8.1-readline/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed,automatic]
php8.1-xml/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1-zip/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 amd64 [installed]
php8.1/jammy-updates,jammy-security,now 8.1.2-1ubuntu2.8 all [installed,automatic]
php/jammy,now 2:8.1+92ubuntu1 all [installed]

관련 정보