我在线购买了一台服务器并安装了 LAMP(一键式,我没有配置任何东西)。
我现在需要使用 php 创建一个动态页面,但是如果创建一个test.php
包含以下代码的文件:
<?php
echo "Hello!";
?>
当我连接到时,http://serverIP/test.php
它并没有显示一个空白页,而是显示它一直在作为文件Hello!
下载到我的电脑上!test.php
请注意:
test.php
位于/var/www/html
旁边index.html
,并且还有许多其他可以正常工作的 .html 文件。如果我
php -v
在命令行中输入php 7.0.22-0ubuntu0.16.04.1已安装。
当我输入
a2enmod php7.0
它时模块 php7.0 已启用
使用 LAMP 我安装了
Ubuntu 16.04 and Apache 2.4.18
(Ubuntu)。无法看到名为“modules”的文件夹
/etc/apache2
当我修改任何文件时我也会重新启动 apache(
service apache2 restart
)
这就是我的样子/etc/apache2/apache2.conf
(没有所有的评论):
Mutex file:${APACHE_LOCK_DIR} default
PidFile ${APACHE_PID_FILE}
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
HostnameLookups Off
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
Include ports.conf
<Directory />
Options FollowSymLinks
AllowOverride None
Require all denied
</Directory>
<Directory /usr/share>
AllowOverride None
Require all granted
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
<IfModule sapi_apache2.c>
php_admin_flag engine on
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
</IfModule>
</Directory>
AccessFileName .htaccess
<FilesMatch "^\.ht">
Require all denied
</FilesMatch>
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
IncludeOptional conf-enabled/*.conf
IncludeOptional sites-enabled/*.conf
#the following lines are what I added
LoadModule php7_module modules/libphp7.so ### in "etc/apache2" there isn't a folder named "modules" ###
AddType application/x-httpd-php .php
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
答案1
答案2
检查/etc/php/7.0/
以确保已php7.0-cgi
安装。您应该apache2
在其中有一个文件夹,如果您看到的只是一个cli
文件夹,则需要sudo apt-get install php7.0-cgi
重新启动 Apache。