Я создал веб-страницы и запустил их на локальном хосте,

Мне нужно удалить расширение .php из файла PHP, например с localhost/root folder-name/wallpaper.php на localhost/root folder-name/wallpaper.

Я ищу в Google, и я нашел ссылку http://alexcican.com/post/how-to-remove-php-html-htm-extensions-with-htaccess/

Вот код .htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

Могу ли я узнать, можно ли добиться этого в localhost?

Если возможно, значит, как создать файл .htaccess? Я имею в виду, какое имя нужно использовать для сохранения файла .htaccess?

Кто-нибудь может мне помочь? заранее спасибо.

1
sona 10 Мар 2015 в 07:19

2 ответа

Лучший ответ

Вы можете создать файл в Microsoft Wordpad или Блокноте и сохранить его под именем .htaccess (обратите внимание, что старые версии Блокнота не допускают этого). Имя файла имеет просто расширение без имени перед точкой. Некоторые программы не позволяют сохранять имя файла только с расширением, а проводник Windows не позволяет вам также переименовывать файл с расширением.

2
mseifert 10 Мар 2015 в 04:36

Давайте пройдемся по этому файлу. Первое, что мы здесь делаем, это оборачиваем все проверкой на существование mod_rewrite.c; если этот модуль Apache присутствует, мы можем продолжить. Затем мы включаем RewriteEngine и подготавливаем его к работе, задав ему два правила. В этих правилах говорится о выполнении перезаписи, если запрошенный URI не соответствует имени существующего файла или каталога.

В следующей строке объявляется фактическое RewriteRule. Это говорит о том, что любые запросы к api / v1 /, которые не являются существующим файлом или каталогом, должны вместо этого отправляться на api / v1 / index.php. (. *) Отмечает именованный захват, который отправляется сценарию MyAPI.php, а также в переменной запроса с использованием разделителя $ 1. В конце этой строки есть несколько флагов, которые определяют, как выполняется перезапись. Во-первых, [QSA] означает, что названный захват будет добавлен к вновь созданному URI. Второй [NC] означает, что наши URI не чувствительны к регистру. Наконец, флаг [L] указывает, что mod_rewrite не должен обрабатывать какие-либо дополнительные правила, если это правило соответствует.

0
asx 10 Июл 2015 в 14:05