Расширение PHP5 не анализирует XAMPP
Вопрос
Я установил сервер Apache XAMPP и поместил свой сайт в htdocs.Я запустил сервер Apache.На моем сайте есть файлы с расширением PHP и с расширением PHP5. Разница в том, что когда я ввожу в браузере localhost/file.php - я вижу разобранный сайт.
Но когда я набираю localhost/file.php5 (этот файл у меня есть на сервере), браузер спрашивает меня, хочу ли я загрузить или открыть этот файл.И если я выберу «Открыть», я увижу PHP-код файла file.php5!
Я изучил конфигурацию, поэтому:
- у меня нет файла htaccess
- PHPINFO() показывает PHP 5
c:\xampp\apache\conf\extra\httpd-xampp включен в конфигурацию и имеет это в начале:
Приложение AddType/x-httpd-php-source.phps
Приложение AddType/x-httpd-php .php .php5 .php4 .php3 .phtml .phpt
Я также попробовал поставить:
AddHandler php5-script .php5
AddType text/html .php5
В httpd.conf, но у меня не работает (без изменений).
Не могли бы вы помочь мне исправить это?Я хотел бы, чтобы файлы расширений php5 и php открывались с помощью парсера php5.
Решение
XAMPP передает по умолчанию файлы со следующими расширениями в PHP: .php .php5 .php4 .php3 .phtml .phpt (это было протестировано с XAMPP Lite 1.6.8).
Я бы предложил удалить " AddType text / html .php5 " строка из конфигурации XAMPP. В качестве альтернативы используйте чистую установку XAMPP и посмотрите на различия (например, WinMerge ).
Другие советы
Следуйте по пути c:/xampp/apache/conf/extra/httpd-xammp
Открыть httpd-xammp
Найдите область текста, похожую на эту:
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
замените верхнюю строку кода следующим:
<FilesMatch "\.php$|\.php5$|\.php4$|\.php3$|\.phtml$|\.phpt$">
текст выглядит примерно так:
<FilesMatch "\.php$|\.php5$|\.php4$|\.php3$|\.phtml$|\.phpt$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
Это сработало для меня. Р>
Удачи ..
Мне пришлось выяснить, как сделать это снова, когда я переключился на ОС Ubuntu. Файл, который необходимо изменить, называется php5.conf
. Р>
Я установил apache 2, php5, phpmyadmin, mysql-server и rapache с менеджером пакетов synaptic (system > Administration > менеджер пакетов synaptic) и не использовал XAMPP. Если вы уже установили XAMPP, пути к /opt/lampp
будут другими, вероятно, где-то в файле /etc/apache2/mods-avaible/php5.conf
. Р>
При моей установке путь к ней .php5
. Прежде чем он может быть изменен, вы должны использовать терминал, чтобы изменить разрешения, чтобы позволить вам писать в него. Чтобы добраться до него, откройте терминал и введите:
cd /etc/apache2/mods-available
, а затем строка, которая меняет разрешения:
sudo chmod a+w php5.conf
Вы можете ввести следующее, чтобы убедиться, что разрешения были изменены:
ls -l
Вы должны увидеть длинный список файлов с разрешениями. Строка для AddType
должна выглядеть следующим образом (за исключением даты и времени):
-rw-rw-rw- 1 root root 139 2009-12-06 22:35 php5.conf
Это означает, что у каждого есть права на чтение и запись. Вы можете изменить разрешения обратно, когда вы закончите, если хотите. А сейчас перейдите к внесению необходимых изменений, набрав:
nano php5.conf
Это открывает файл в виде текстового редактора. То, что вы должны увидеть, это:
<IfModule mod_php5.c>
AddType application/x-httpd-php .php .phtml .php3
AddType application/x-httpd-php-source .phps
</IfModule>
Измените текст следующим образом:
<IfModule mod_php5.c>
AddType application/x-httpd-php .php .phtml .php3 .php5
AddType application/x-httpd-php-source .phps
</IfModule>
Добавление <=> после первой команды <=>.
Нажмите ctrl + x , чтобы выйти, и y, чтобы сохранить изменения. Затем перезагрузите компьютер. И тогда ваши файлы с расширениями <=> должны работать!
Я не могу поверить, что мне потребовались часы, чтобы понять! Удачи!
Добавление:
AddType application/x-httpd-php .php .php5
у меня работало под OS X и Apache 2.2.10, я не могу себе представить, чтобы на XAMPP было иначе.Я бы отменил все ваши другие изменения/модификации в httpd.conf, а затем имел бы только:
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php .php5
Затем перезапустите апач.Избавьтесь от AddHandler, AddType и т. д.