Файлы PHP загружаются браузером вместо обработанного локальным dev сервером (MAMP)

Все шло большое, пока я не добавил AddHandler application/x-httpd-php5s .php в .htaccess файл в корне документа моего локального сервера (который я часто изменяю в зависимости от сайта, я работаю с). Так как я сделал это, когда я посещаю http://localhost:8888, мой браузер просто загружает index.php, и он не обрабатывается вообще, просто необработанный код. Теперь я удалил ту строку из .htaccess файла, но у меня все еще есть эта проблема.

Я нашел, что, если я добавляю альтернативную запись в свой файл hosts для 127.0.0.1, новая запись ведет себя как 'localhost', привыкший к. Но если я добавляю строку выше к моему .htaccess, это выводит тот новый хост из строя также. Я попытался переустановить MAMP и очистить его кэши и все временные файлы, которые я мог найти. Я переместился через httpd.conf файл Apache по всем напрасно.

Так, чтобы быть ясным: http://localhost:8888 испытывает вышеупомянутую проблему. Если я добавляю новую запись в свой файл hosts для 127.0.0.1, говорю, что 'goomba' и вышеупомянутая строка не находятся в корне .htaccess (и никогда не был для этого host/alias/whatever), затем, я могу получить доступ к http://goomba:8888 очень хорошо. Но если я действительно добавляю, что строка к .htaccess затем, я должен добавить еще одну запись в свой файл hosts для обхождения его, даже если я удаляю ту строку из .htaccess файл.

Все хорошо с использованием других 127.0.0.1 псевдонимов (хост? чем это называют?), но это прослушивает меня, что это все еще повреждается.

Только, чтобы быть ясным, я нахожусь на Leopard Mac OS (но я не использую созданный в установке Apache, но MAMP).

14
задан donut 25 February 2010 в 06:16
поделиться

3 ответа

Вы применяете mimetype там, где должен быть обработчик (см. документацию по обработчикам )

Попробуйте вместо этого:

AddType application/x-httpd-php5 .php

РЕДАКТИРОВАТЬ: Как вы указали, модули кэширования загружены вы можете прочитать о кешировании и htcacheclean (для очистки кеша диска). Вы также можете временно использовать директиву CacheDisable . Еще одна вещь, которую вы также можете попробовать, - это переименовать запрошенный файл (например, index.php -> index.bak), снова запросить файл в браузере (теперь должно быть 404), затем вернуться и повторить попытку.

5
ответ дан 1 December 2019 в 10:18
поделиться

Сначала проверьте, запущен ли ваш сервер apache. Start->Run->cmd и затем выполните команду:

netstat -abn

Просмотрите результат для строки вроде этой:

TCP 0.0.0.0:8888 0.0.0.0:0 LISTENING 600 [apache.exe]

Если вы не можете найти ничего, прослушивающего порт 8888 (нет строки 0.0.0.0:8888), значит ваш apache не запускается. Чтобы выяснить, почему он не запускается, вам нужно найти каталог журнала apache и просмотреть error.log (возможно, вы недавно обновляли php?). Если вы нашли строку прослушивания 0.0.0.0:80, но там прослушивает какая-то другая программа (у вас запущен IIS?), то вам следует удалить / перенастроить эту программу, чтобы освободить порт 80. Если у вас есть apache, слушающий порт 80, но вы все равно не можете открыть свой сайт и не можете понять, что вызывает проблему, изучив файлы журнала apache, тогда это может быть проблема с базой данных. Проверьте, запущен ли ваш mysql и прослушивается ли он, используя ту же команду, но вы должны искать

TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING [mysqld-nt.exe]

Если вы не можете найти такую строку, значит ваш сервер mysql не запущен - проверьте файлы журнала mysql на наличие ошибок. Если оба сервера работают, но вы не можете получить никакого результата в браузере, проверьте ваш брандмауэр и антивирус - они могут блокировать ваши запросы. Надеюсь, это поможет ;)

0
ответ дан 1 December 2019 в 10:18
поделиться

Возможно, вы хотите application / x-httpd-php5 вместо application / x-httpd-php5s ? (Обратите внимание на отсутствие s в конце.)

2
ответ дан 1 December 2019 в 10:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: