apache скачивает файлы php

Тема: php-скрипт не выполняется, а скачивается

Опции темы
Поиск по теме

Всем добрый вечер.
Сделали мне VDS-сервер: ISP-manager Lite 4.3 + Apache 2.2.13 + PHP5
Проблема в том, что php-скрипты не выполняются а скачиваются. Cтрочка

в httpd.conf прописана, но не срабатывает.
В чём причина может быть?

Скачивается исходный текст или «файл с мусором»?

Если выполнить простейший скрипт вида то тоже не работает?

Скачивается чистый файл со всем содержимым.
Тестирую как раз на phpinfo.php.
Модули загружаются следующие:
cgi-fcgi
ctype
curl
date
hash
libxml
mysql
pcre
Reflection
session
SimpleXML
SPL
standard
zlib

Причину обнаружил, правда не пойму, с чем она связана.

Если при создании пользователя и задании домена выставить следующие параметры:

То скрипты не работают

Если же предварительно добавить AddType и оставить
половину от предыдущего объявления:

то всё начинает работать.
Оччень странно.

Вообще, они ставят сначала Апач 1, а потом Апач 2.
Могут из-за этого глюки появиться?

Настройки виртуалхоста которые делает ISPmanager у вас верные. Вероятно проблема с модулем PHP или с конфигурацией выше. Глобально ничего не надо включать, как вы делаете дальше. Все надо включать внутри виртуалхоста и прописывается автоматически при выборе режима работы PHP в свойствах WWW домена.

Вот я и сам ломаю голову над тем, почему ISP manager всё прописывает правильно внутри хоста, а ничего не срабатывает. Чтобы работало, нужно при создании пользователя и виртуального хоста вообще не выбирать PHP, а AddType подрисовывать глобально руками.
Видимо проблема где-то во внешней конфигурации. Так не хочется время тратить на то, что уже должно быть настроено по умолчанию, блин.

Источник

Apache загружает файлы php вместо того, чтобы отображать их

ОС и информация о сервере:

Ранее у меня был установлен php 5.3.x, но я решил обновить его. Сначала я удалил php 5.3.x, а затем установил php 5.5.1, но после завершения установки apache не анализировал файлы php, он просто загрузил их. Я проверил подобные вопросы здесь в stackoverflow, но ни один из них мне пока не помог.

Для записи у меня есть следующие строки в моих httpd.conf и php.conf, которые должны заставить php работать, но не:

Я был бы очень признателен за любую помощь.
Спасибо.

У меня есть эти строки в php.conf

apache больше не загружает файл. Теперь Apache показывает исходный код, но не все это только часть. я добавил

Решение

Правильный AddType для php это application / x-httpd-php

Также убедитесь, что ваш модуль PHP загружен

Когда вы настраиваете апач попытайтесь просмотреть страницу из другого браузера — У меня были дни, когда хром упорно кэширует результат и сохраняет загрузку исходного кода в то время как в другом браузере, это просто прекрасно.

Другие решения

После многих усилий я наконец решил проблему.

Но если вы все еще получаете ошибку:

затем сделайте следующее:

Сначала удалите оригинал:

Затем создайте символическую ссылку:

Я надеюсь, что ваша проблема решена.

Я столкнулся с этой проблемой сегодня, и ни одно из описанных решений не помогло мне. Итак, вот еще одна возможная причина:

Если у вас есть что-то вроде

Пожалуйста, взгляните на ваши директивы addtype.

Пожалуйста, попробуйте это:

Что касается предложения выше, что вы должны сообщить браузеру, что вы выводите PHP-скрипт: мне показалось, что это необычная идея. Я гуглил это и обнаружил, что в Интернете довольно много дискуссий по этому поводу. Очевидно, есть случаи, когда вы можете сказать, что отправляете сценарий PHP (хотя Apache должен выполнять сценарий и генерировать text / html), а также есть случаи, когда браузер просто не распознает этот конкретный Mime. Тип.

Очистка кэша вашего браузера — это всегда хорошая идея.

В случае, если это полезно, вот копия моего файла /etc/httpd/conf.d/php.conf с сервера под управлением CentOS 5.9:

Это может происходить из-за отсутствия модулей, необходимых для вашего php.
Предполагая, что у вас установлен php7, выполните поиск доступных модулей php7, используя

Выше команда перечислит все доступные модули PHP7 для установки.
Вы можете начать установку модулей, как,

Я прокомментировал это, и все работает отлично.

У меня ранее была похожая проблема, после обновления с 5.3 до 5.4. Но мои настройки выглядят немного иначе, так как я использую Debian и использую fcgid для сервера страниц PHP, а не модуль PHP5 apache / cgi.
Поэтому после обновления он также установил php5_cgi, который конфликтовал с моей настройкой fcgid, и больше не выполнял файлы PHP.

Мне пришлось отключить модуль Apache и перезапустить Apache

Когда модуль php5_cgi вышел из строя, fcgid снова смог обслуживать страницы PHP.

Источник

Apache загружает файлы php вместо их отображения

Информация о ОС и сервере:

Я ранее установил php 5.3.x, но решил обновить. Сначала я удалил php 5.3.x, а затем установил php 5.5.1, но после завершения установки apache не разобрал файлы php, которые он просто скачал. Я проверил похожие вопросы здесь, в stackoverflow, но ни один из них не помог мне до сих пор.

Для записи у меня есть следующие строки в моих httpd.conf и php.conf, которые должны делать работу php, но не делают:

Читайте также:  муж заболел коронавирусом а жена нет что делать

Я бы очень признателен за любую помощь. Спасибо.

У меня эти строки в php.conf

apache больше не загружает файл. Теперь apache показывает исходный код, но не все это просто часть. я добавил

Правильный AddType для php – application / x-httpd-php

Также убедитесь, что ваш php-модуль загружен

Когда вы настраиваете апач попытайтесь просмотреть страницу из другого браузера – У меня были дни, когда хром упорно кэширует результат и сохраняет загрузку исходного кода в то время как в другом браузере, это просто прекрасно.

После долгих проблем я наконец решил проблему.

Но если вы все еще получаете ошибку:

затем выполните следующие действия:

Сначала удалите оригинал:

Затем создайте символическую ссылку:

Надеюсь, ваша проблема решена.

Сегодня я столкнулся с этой проблемой, и ни одно из описанных решений не помогло мне. Итак, вот еще одна возможная причина:

Если у вас есть что-то вроде

Пожалуйста, взгляните на свои директивы addtype.

Что касается вышеизложенного предложения, вы должны сообщить браузеру, что вы выводите скрипт PHP: для меня это показалось необычной идеей. Я искал ее и обнаружил, что в Интернете довольно много обсуждений. По-видимому, есть случаи, когда вы можете сказать, что вы отправляете скрипт PHP (хотя Apache должен выполнять скрипт и испускать текст / html), а также есть случаи, когда браузер просто не распознает эту конкретную Mime Тип.

Очистка кеша браузера всегда хорошая идея.

В случае, если это полезно, вот копия моего файла /etc/httpd/conf.d/php.conf с сервера, на котором запущена CentOS 5.9:

Это может происходить из-за недостающих модулей, необходимых для вашего php. Предполагая, что у вас установлен php7, найдите доступные модули php7, используя

Команда Above отобразит все доступные модули PHP7 для установки. Вы можете начать установку модулей, таких как,

Я прокомментировал это, и все работает нормально.

У меня была аналогичная проблема после обновления с 5.3 до 5.4. Но моя настройка выглядит немного по-другому, так как я запускаю Debian и использую fcgid для сервера PHP-страниц, а не модуль PHP5 apache / cgi. Поэтому после обновления я также установил php5_cgi, который столкнулся с моей установкой fcgid и больше не будет выполнять файлы PHP.

Мне пришлось отключить модуль Apache и перезапустить Apache

После того как модуль php5_cgi был в стороне, fcgid снова смог обслуживать страницы PHP.

У меня были подобные симптомы, но еще одно решение: в /etc/apache2/mods-enabled/php5.conf в комментарии был полезный совет, который я последовал:

Я провел два дня, отслеживая это, и узнал, что я помещал свои PHP-скрипты в неправильный каталог.

Я только что начал работу с PHP, поэтому не знаю, связано ли мое решение с изменением версии.

это решило проблему для меня (у меня установлен php7):

sudo apt-get install libapache2-mod-php7.0

sudo service apache2 restart

У меня была эта проблема. Оказалось, что у меня установлены как nginx, так и apache и автоматически запускаются при загрузке. Проблема заключалась в том, что nginx сначала привязывался к порту http, что предотвращало запуск apache.

У меня была аналогичная проблема с OP при обновлении php5 из более старой версии, до версии 5.5.9, которая является версией, установленной с Mint 17.

Я запускаю настройку LAMP на машине в локальной сети, которую я использую для предварительного просмотра изменений на веб-сайтах, прежде чем я загружу эти изменения на реальный сервер. Поэтому я поддерживаю идеальное локальное зеркало фактического сайта.

После обновления файлы, которые запускаются и отображаются отлично на фактическом сайте, не будут отображаться или будут отображаться только на html на локальном компьютере. PHP не анализировался. Команда phpinfo () работала, поэтому я знал, что php работает иначе. В журнале не было ошибок. Просмотр источника страницы показал мне фактический код php.

Я создал страницу test.php, содержащую следующий код:

Это сработало. Затем я обнаружил, когда я изменил на команда больше не работала. Все мои php-сайты используют вместо который может быть не идеальным, но это реальность. Я исправил проблему, перейдя в / etc / php5 / apache2, выполнив поиск «short_open_tag» и изменив значение с «Выкл.» На «Вкл.».

Если ни одно из вышеперечисленных работ не будет выполнено,

попробуйте прокомментировать строку

и перезапустите apache, используя

Он должен работать!

У меня такая проблема. Вот как я его решаю. После установки Apache я установил PHP, используя эту команду.

он выполняется правильно, но я запрашиваю файл .php из Apache, он дает без выполнения PHP- скрипта.

Тогда я проверяю, что PHP включен.

но он не показал никаких результатов. Я проверяю установленные пакеты PHP.

Я переустанавливаю PHP

Убедитесь, что модуль PHP загружен

Перезапустить сервер Apache

Наконец, я проверяю процесс PHP на Apache

создать пустой файл

Добавьте этот контент в info.php и сохраните.

он показывает правильно. Я думаю, это поможет любому.

Источник

Apache is downloading php files instead of displaying them

OS and server information:

I previously had php 5.3.x installed but decided to upgrade. I first uninstalled the php 5.3.x and then installed php 5.5.1 but after the installation completed apache did not parse the php files it just downloaded them. I have checked similar questions here in stackoverflow but none of them have helped me so far.

Читайте также:  меридиан что это такое по географии

For the record I have the following lines in my httpd.conf and php.conf that should make php work but don’t:

I would really appreciate any help. Thank you.

I have these lines in the php.conf

apache no longer downloads the file. Now apache is showing the source code, but not all of it just part. I added

26 Answers 26

The correct AddType for php is application/x-httpd-php

Also make sure your php module is loaded

I came across this issue today and none of the solutions described worked for me. So here is another possible cause:

If you have something like

After struggling a lot I finally solved the problem.

But If you are still getting the error :

then do the following:

First remove the original:

Then create the symbolic link:

I hope your problem is solved.

Please take a look at your addtype directives.

Regarding the suggestion above that you should tell the browser that you are outputting a PHP script: It seemed like an unusual idea to me. I googled it and found that there is quite a bit of discussion about it on the web. Apparently there are cases where you might want to say that you are sending a PHP script (even though Apache is supposed to execute the script and emit text/html,) and there are also cases where the browser simply doesn’t recognize that specific Mime Type.

Clearing your browser cache is always a good idea.

In case it’s helpful here’s a copy of my /etc/httpd/conf.d/php.conf file from a server running CentOS 5.9:

This might be happening due to the missing modules required for your php. Assuming you have php7 installed, search available php7 modules using

Above command will list all available PHP7 modules for installation. You can begin installation of modules like,

I have commented it and everything works fine.

After updating PHP to 7.3, PHP scripts where run with www-data instead of $USER like before.

I needed to reinstall and activate PHP-FPM :

After that, Apache/PHP was downloading php files instead of running them. So i needed to edit /etc/apache2/mods-available/php7.3.conf to comment the row SetHandler application/x-httpd-php like below :

After restarting Apache, it solved my issue, hope this help.

Take care of browser cache too.

I previously has a similar issue, after upgrading from 5.3 to 5.4. But my setup looks a little bit different as that I’m running Debian and using fcgid to server the PHP pages, and not the PHP5 apache/cgi module. So after I upgraded, it also installed php5_cgi, which collided with my fcgid setup, and would not execute PHP files anymore.

I had to disable the Apache Module and restart Apache

Once the php5_cgi module was out of the way, fcgid was able to serve PHP pages again.

I had similar symptoms, yet another solution: in /etc/apache2/mods-enabled/php5.conf there was a helpful advice in the comment, which I followed:

In case someone is using php7 under a Linux environment

Make sure you enable php7

Restart the mysql service and Apache

I spent two days tracking this and found out that I was putting my PHP scripts in the wrong directory.

I just started PHP work, so I don’t know if my solution relates to the version change you went through.

this solved the problem for me (I have php7 installed):

sudo apt-get install libapache2-mod-php7.0

sudo service apache2 restart

I had this problem. It turned out that I had both nginx and apache installed and automatically starting on boot. The problem was that nginx was binding to the http port first which prevented apache from starting.

It’s also possible that you have nginx running but your php is set up to run with apache. To verify, run service nginx status and service apache2 status to see which is running. In the case that nginx is running and apache is not, just run sudo service nginx stop; sudo service apache2 start and your server will now serve php files as expected.

The conclusion

The entire story

I tried all kinds of stuff:

Источник

Apache скачивает файлы php

Бывалый

Профиль
Группа: Участник
Сообщений: 246
Регистрация: 24.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1

Помогите разобраться со следующей проблемой
Установил у себя на машине Apache_mysql_php
Сервер вроде запустился, но когда пытешься открыть в браузере php-й файл, то он предлагает его скачать
Все делал по статье [http://www.opennet.ru/base/net/lamp_slackware.txt.html]

Профиль
Группа: Участник
Сообщений: 8
Регистрация: 2.3.2008

Репутация: нет
Всего: нет

Цитата(Nickname @ 24.6.2008, 22:55)
Помогите разобраться со следующей проблемой
Установил у себя на машине Apache_mysql_php
Сервер вроде запустился, но когда пытешься открыть в браузере php-й файл, то он предлагает его скачать
Все делал по статье [http://www.opennet.ru/base/net/lamp_slackware.txt.html]

Бывалый

Профиль
Группа: Участник
Сообщений: 246
Регистрация: 24.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1

Профиль
Группа: Участник
Сообщений: 8
Регистрация: 2.3.2008

Репутация: нет
Всего: нет

Замени DirectoryIndex index.php index.html
на DirectoryIndex index.php
И проверь.
Если не получиться пиши,
скажу что еще нужно будет посмотреть.

Эксперт

Профиль
Группа: Комодератор
Сообщений: 2722
Регистрация: 2.5.2006
Где: Краснодар

Репутация: 2
Всего: 67

вот сюда положи index.php
с содержимым

Цитата(wertik @ 25.6.2008, 22:18 )
Замени DirectoryIndex index.php index.html
на DirectoryIndex index.php

Бывалый

Профиль
Группа: Участник
Сообщений: 246
Регистрация: 24.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1

Цитата(wertik @ 25.6.2008, 22:18 )
Замени DirectoryIndex index.php index.html
на DirectoryIndex index.php
И проверь.

Причем, что странно обычные html-е страницы открываются нормально, и когда предлагает скачать php пишет его тип правильно

А можно ли как-то проверить, что пхп встал нормально?

Эксперт

Профиль
Группа: Комодератор
Сообщений: 2722
Регистрация: 2.5.2006
Где: Краснодар

Репутация: 2
Всего: 67

Цитата(Nickname @ 26.6.2008, 12:57 )
А можно ли как-то проверить, что пхп встал нормально?

и в /var/log/messages посомтрите на ругательства.

Бывалый

Профиль
Группа: Участник
Сообщений: 246
Регистрация: 24.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1

Вы про что? Про сайт www.test? Да нет сугубо доступ через браузер на той же машине

Цитата(marykone @ 26.6.2008, 14:05 )
и в /var/log/messages посомтрите на ругательства.
Цитата
Jun 26 18:35:35 localhost gconfd (root-4017): starting (version 2.12.1), pid 4017 user ‘root’
Jun 26 18:35:35 localhost gconfd (root-4017): Resolved address «xml:readonly:/etc/opt/gnome/gconf/gconf.xml.mandatory» to a read-only configuration source at position 0
Jun 26 18:35:35 localhost gconfd (root-4017): Resolved address «xml:readwrite:/root/.gconf» to a writable configuration source at position 1
Jun 26 18:35:35 localhost gconfd (root-4017): Resolved address «xml:readonly:/etc/opt/gnome/gconf/gconf.xml.defaults» to a read-only configuration source at position 2
Jun 26 18:35:37 localhost gconfd (root-4017): Resolved address «xml:readwrite:/root/.gconf» to a writable configuration source at position 0
Jun 26 18:36:04 localhost zmd: Daemon (WARN): Not starting remote web server
Jun 26 18:38:48 localhost kernel: martian destination 0.0.0.0 from 10.160.160.116, dev eth0

engine = On
zend.ze1_compatibility_mode = Off
short_open_tag = On

precision = 12
y2k_compliance = On
output_buffering = Off
zlib.output_compression = Off
implicit_flush = Off
unserialize_callback_func=
serialize_precision = 100
allow_call_time_pass_reference = On
safe_mode = Off
safe_mode_gid = Off
safe_mode_include_dir =
safe_mode_exec_dir =
safe_mode_allowed_env_vars = PHP_
safe_mode_protected_env_vars = LD_LIBRARY_PATH
disable_functions =
disable_classes =
expose_php = On
max_execution_time = 30 ; Maximum execution time of each script, in seconds
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data

memory_limit = 128M ; Maximum amount of memory a script may consume (128MB)
error_reporting = E_ALL &

E_NOTICE
display_errors = On
display_startup_errors = Off
log_errors = Off
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = Off
variables_order = «EGPCS»
register_globals = Off
register_long_arrays = On
register_argc_argv = On
auto_globals_jit = On
post_max_size = 8M
magic_quotes_gpc = On
magic_quotes_runtime = Off
magic_quotes_sybase = Off
auto_prepend_file =
auto_append_file =
default_mimetype = «text/html»

; UNIX: «/path1:/path2»
;include_path = «.:/php/includes» ; Есть подозрение на эту строчку
;
; Windows: «\path1;\path2»
;include_path = «.;c:\php\includes»
doc_root =
user_dir =
extension_dir = «./»
enable_dl = On
file_uploads = On
upload_max_filesize = 2M
allow_url_fopen = On
allow_url_include = Off
default_socket_timeout = 60
[Date]
[filter]

[iconv]
[sqlite]
[xmlrpc]
[Pcre]
[Syslog]
define_syslog_variables = Off
[mail function]
SMTP = localhost
smtp_port = 25
[SQL]
sql.safe_mode = Off

odbc.defaultlrl = 4096
odbc.defaultbinmode = 1

mysql.default_user =
mysql.default_password =
mysql.connect_timeout = 60
mysql.trace_mode = Off

.
[Session]
session.save_handler = files
session.use_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 100
session.gc_maxlifetime = 1440
session.bug_compat_42 = 1
session.bug_compat_warn = 1

session.referer_check =
session.entropy_length = 0
session.entropy_file =
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 4
url_rewriter.tags = «a=href,area=href,frame=src,input=src,form=,fieldset=»

LoneLINEss

Репутация: нет
Всего: 20

Nickname, у тебя php к апачу не подключен. Попробуй в конец добавить:

LoadModule php5_module «/php5apache2_2.dll»

Только не забудь правильный путь до php5apache2_2.dll прописать. Это при условии, что у тебя Apache 2.2. и PHP 5.2. В других версиях имя файла может быть другое. Но вообще говоря, про это подробно в доке к php написано, не лишним было бы прочитать.

Кстати, конфиг апача странный какой-то. На мой вообще не похож, правда, у меня виндовый апач, но не думаю, что должны быть серьезные различия. ИМХО, это конфиг у тебя не дефолтный. В нем даже никакие модули не загружаются.

И на будущее, для таких вопросов есть более подходящий раздел: Администрирование Web серверов и Web служб.

Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Бывалый

Профиль
Группа: Участник
Сообщений: 246
Регистрация: 24.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1

Цитата(Borland_Delphi_6 @ 26.6.2008, 19:51 )
Nickname, у тебя php к апачу не подключен. Попробуй в конец добавить:

LoadModule php5_module «/php5apache2_2.dll»

Подскажите, как удалить установленный апач, если установка шла через configure->make->make install

Эксперт

Профиль
Группа: Комодератор
Сообщений: 2722
Регистрация: 2.5.2006
Где: Краснодар

Репутация: 2
Всего: 67

Цитата(Borland_Delphi_6 @ 26.6.2008, 19:51 )
Nickname, у тебя php к апачу не подключен. Попробуй в конец добавить:

блин а я не усмотрел

а еще locate libphp5.so

Бывалый

Профиль
Группа: Участник
Сообщений: 246
Регистрация: 24.10.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 1

За интересные статьи, находки, решения, программы и просто реальную помощь будут ставиться + в репу).

В данный момент этот раздел модерируют nerezus, nickless, powerfox, pythonwin, Imple и ZeeLax. Если вы хотите помочь нам, пишите в ПМ и мы обсудим.

0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | *NIX системы: Общие вопросы | Следующая тема »

[ Время генерации скрипта: 0.1419 ] [ Использовано запросов: 21 ] [ GZIP включён ]

Источник

Читайте также:  Кажется мой сон продолжался несколько мгновений но проснувшись ответы
Образовательный портал