Запуск php файлов на ISS 7 без расширения файла
Я перемещаю приложение PHP на свой веб-сервер IIS 7.
Многие файлы в приложении являются файлами php, но не имеют расширения php (фактически они не имеют расширения файлов). Это хорошо работает на старом хостинге Apache, но я не могу заставить его работать на IIS 7.
Я пытался изменить сопоставления обработчиков, но я не знаю, как отобразить файлы без расширения на обработчик PHP.
Я пытался просто использовать *, но, как я подозревал, статические файлы, такие как jpegs, также запускались через PHP, и это не понравилось.
Спасибо за вашу помощь.
3 ответа
Возможно, вам придется добавить еще один обработчик для файлов, которые вы не хотите, чтобы исполняемый файл PHP пытался проанализировать. Я не знаю, как сказать интерпретатору PHP, что он не должен интерпретировать определенные файлы на основе расширения.
Стандартный способ сделать это - добавить mime-тип и обработчик для *. файлы, однако, как вы указали, это приведет к тому, что все файлы, еще не покрытые обработчиком, обрабатываются PHP, а это не то, что вам нужно.
Я думаю, единственные варианты, которые я могу придумать, это либо сделать это, а затем добавить обработчики для всех файлов, которые вы не хотите обрабатывать PHP, или добавить расширения для этих файлов. Если их много, вы можете использовать утилиту поиска и замены для добавления расширений файлов.
Вам необходимо убедиться, какой модуль используется в Apache и как реализовано отображение дескриптора в PHP в Unix, чтобы успешно перенести его в IIS 7.
Использование FastCGI для размещения приложений PHP на IIS 7.0. Это должно помочь..
http://learn.iis.net/Content_Cache/246/IIS%20-%20Add%20Module%20Mapping.png. Просто позаботьтесь о разделе отображения обработчиков... и PHP должен работать.