Как переименовать файл в .htaccess в Windows 7?

85268
rzlines

Я использую XAMPP для тестирования скрипта PHP. Теперь в корне папки я хочу разместить .htaccessфайл согласно требованиям скрипта.

Но Windows не позволит мне переименовать его .htaccess. Есть ли способ обойти это?

Я использую Windows 7 RTM.

60
[Как вручную создать файл с помощью. точка префикс в окнах, например .htaccess] (http://stackoverflow.com/q/5004633/995714) phuclv 7 лет назад 0

6 ответов на вопрос

82
Jay Paroline

Благодаря https://serverfault.com/questions/22626/rename-files-to-empty-filename-in-windows-vista я узнал новый трюк. Так как эта страница отображается в Google выше для этого сообщения об ошибке, я решил связать ее и здесь.

По сути, если вы хотите сделать это в проводнике, назовите его .htaccess. с завершающей точкой. Конечная точка сообщает Windows, каким должно быть расширение, а начальная точка и буквы указывают, каким должно быть имя файла (без расширения). Похоже, что файл без расширения является допустимым, но не файл без имени файла. К счастью, для файла без расширения не требуется точка, поэтому мы получаем удаление, которое создает желаемое имя файла (которое является просто расширением - см. Тип файла, который сообщает Windows?)

Вы можете сделать это с любой строкой, а не только с htaccess. Это имеет небольшой смысл для меня, потому что файлы, начинающиеся с точки, имеют особое значение.

это ошибка или фича? etuardu 12 лет назад 1
это ошибка, пока кто-то не найдет для нее применение, тогда это особенность ... теперь это официально особенность. :) jx12345 10 лет назад 3
Отлично, так что вы можете просто набрать `.filename`, и он станет` .filename` Daniel Little 9 лет назад 1
76
pavium

эта ссылка обсуждает ту же проблему на XP.

Я позволю вам прочитать его и решить, будет ли он применяться к Windows 7, но решение предполагает использование командной строки.

РЕДАКТИРОВАТЬ:

Она начинается с того, что ОС Windows будет препятствовать вам создать htaccess.txtфайл
Тогда

Start Run > cmd 

затем введите

rename c:\pathtoyourhtaccessfile\htaccess.txt .htaccess 

сделает свое дело

LOL, это еще одна странная проблема, вызванная Windows! Ahmad Alfy 13 лет назад 6
9
Macha

Не создавайте файл в проводнике Windows. Создайте его в любой программе, которую вы используете (блокнот, VIM, затмение, что угодно). Затем выберите «Сохранить как» и убедитесь, что выбран «Все файлы». Введите .htaccess. Он должен работать.

Все файлы запрещают программе автоматически добавлять расширение типа файлов (например, .htaccess.txt).

6
random

Одна вещь, которую вы могли бы сделать, это использовать другой файл в качестве .htaccessфайла.

Откройте httpd.confили что-либо, что установка XAMPP вызывает файл конфигурации Apache.

Найдите строку, которая начинается с, AccessFileNameи измените значение в конце на то, что Windows позволит вам сохранить.

AccessFileName htaccess.txt 

Если вы не нашли эту строку, просто добавьте выше.

Затем перезапустите свой XAMPP.

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

Возможно, этот ответ слишком буквально воспринимал «любой способ обойти это». random 15 лет назад 7
ИМХО, это легко лучший ответ. Имейте в виду, что когда вы загружаете свой сайт, вы все равно будете на другом сервере. Это означает, что вы все равно захотите использовать другую конфигурацию. В большинстве случаев вы просто оставляете эти файлы без изменений при загрузке и создаете отдельный набор для своего сервера. Я бы посоветовал, что если вы разрабатываете для Win и загружаете на сервер Lin, вы также измените этот параметр на сервере, чтобы их можно было редактировать и в Win, но дать другому серверу другое имя (например, `htaccess. dev.conf` и `htaccess.prod.conf` были бы хорошими). krowe2 8 лет назад 0
Еще одна вещь, которую стоит упомянуть, это то, что большинство файлов `http.conf` содержат несколько строк для предотвращения загрузки этих файлов ...` Требовать все отказано `... измени это на` Требовать все отказано `чтобы сохранить эти файлы недоступными для загрузки (не забудьте вставить отсутствующие символы новой строки; это комментарий, поэтому я удалил их). krowe2 8 лет назад 0
Еще одна вещь, которую стоит упомянуть, это то, что, если вы используете базовую аутентификацию, вы также захотите использовать аналогичную схему именования для ваших файлов `.htpasswd`, чтобы они также оставались скрытыми. krowe2 8 лет назад 0
4
Arjan

Я думаю, что в старые времена Windows XP было достаточно просто процитировать имя файла? Эти цитаты будут удалены Windows. Итак, переименуйте, чтобы сохранить файл как:

".Htaccess"

Это, безусловно, работает только при сохранении, скажем, с помощью Блокнота, а также предотвращает .txtдобавление по умолчанию . Я не уверен на 100%, что это также работает в Windows Explorer. В Windows XP это не работает из Windows Explorer, так как тогда нельзя даже вводить кавычки. И без кавычек это приведет к «Вы должны ввести имя файла». потому что это не нравится ведущая точка. При использовании диалогового окна отображаются те же ошибки, что и при использовании правой кнопки мыши »Свойства.)

4
zeel

Просто назовите его .htaccess.. Конечная точка будет автоматически удалена Windows, оставляя ее с именем, .htaccessкак и должно быть.

Это точная копия [этого ответа] (http://superuser.com/a/176415/4844) более года назад. Tim Pietzcker 12 лет назад 3
«Точный»? Нет. Во всяком случае, я искал ответ на эту проблему и понял его самостоятельно. Но так как я никогда не видел, чтобы кто-то говорил это раньше, я искал здесь этот вопрос, поэтому я мог убедиться, что кто-то еще, кому это нужно, получил информацию. Принятый ответ является меньшим ответом, поэтому я написал. Не заметил другого. Тем не менее, спрашивающий должен изменить принятый ответ на этот, так как это гораздо лучший ответ. zeel 12 лет назад 1
И вы понимаете, что это сбивает с толку людей, если ответ правильный, но отклонен. Теперь, хотя мой ответ полностью верен, другие, ищущие эту информацию, могут быть введены в заблуждение отрицательным результатом. zeel 12 лет назад 0
FWIW, я не понизил это. Но, на мой взгляд, вы должны удалить свой ответ, потому что другой ответ намного лучше: он не просто говорит: «Это волшебство!» но объясняет почему это работает. И вы опоздали со своим примерно на год. Tim Pietzcker 12 лет назад 2
В предыдущем ответе явно не упоминается: конечная точка ** исчезнет ** - таким образом, этот ответ все еще остается в силе. Ujjwal Singh 11 лет назад 2
Этот ответ должен был быть принят самым прямым ответом Sachin Divakar 9 лет назад 0