Я купил сервер онлайн и установил ЛАМПУ на в (1 щелчком, я ничего не настраивал).
Я теперь должен создать динамическую страницу с помощью php, но если создавание файла test.php
со следующим кодом:
<?php
echo "Hello!";
?>
Когда я соединяюсь с http://serverIP/test.php
вместо того, чтобы показать мне пустую страницу, которая говорит Hello!
это продолжает загружать test.php
на моем компьютере как файл!
Пожалуйста, примите во внимание:
test.php
находится в /var/www/html
рядом с index.html
и многие другие .html файлы та работа правильно.
Если я ввожу php -v
в командной строке это говорит это
7.0.22-0ubuntu0.16.04.1 php установлен.
Когда я ввожу a2enmod php7.0
это говорит
Модуль php7.0 уже включил
С ЛАМПОЙ я был установлен Ubuntu 16.04 and Apache 2.4.18
(Ubuntu).
не видьте папку, названную "модулями" в /etc/apache2
Когда я изменяю любой файл, я также перезапускаю апача (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>
Благодаря @Panther оказалось, что я использовал nginx, не апачский... так решенная проблема. Еще раз спасибо @Panther!
Вы, вероятно, хотите удалить или отключить nginx
sudo systemctl disable nginx
или
sudo apt-get remove nginx
Проверить /etc/php/7.0/
для проверки Вы имеете php7.0-cgi
установленный. Вы должны иметь apache2
папка там, если все Вы видите, является a cli
папка Вы должны будете sudo apt-get install php7.0-cgi
, затем Apache перезапуска.