#mod-rewrite #osx-snow-leopard #mamp
#переписать мод #osx-snow-leopard #mamp
Вопрос:
Я использую MAMP и не могу заставить mod_rewrites работать.
После долгой игры с многочисленными файлами http.conf, а затем, наконец, посмотрел на мой php_info, там не установлен mod_rewrite exstension.
Я открыл файлы php.ini в приложениях> MAMP> conf> php5.2 amp; php5.3 и посмотрел на расширения, и там не было mod_rewrite.so . Все, что я вижу, это:
extension=imap.so
extension=yaz.so
extension=mcrypt.so
extension=gettext.so
extension=pgsql.so
extension=pdo_pgsql.so
extension=pdo_mysql.so
Я добавил это, ожидая удачи — но никакой радости!
Комментарии:
1. Правильно, я обнаружил, что mod_rewrite находится в загруженных модулях, что возвращает меня к квадрату 1.
2. Хм, ты забыл включить RewriteEngine?
3. вы устанавливали mod_rewrite, когда устанавливали MAMP? Убедитесь, что вы вообще включили это в свою установку, затем попробуйте просто добавить extension=mod_rewrite.so . если это не сработает, убедитесь, что у вас включен движок перезаписи и т.д.
Ответ №1:
У меня была такая же проблема, и, надеюсь, это решит ее для вас.
Я добавил свой сайт в свой хост-файл, поэтому вместо того, чтобы проходить через locahost /….. У него был свой собственный URL, который я перенаправил на 127.0.0.1. т. е. мой хост-файл выглядел следующим образом
127.0.0.1 мой сайт.Местные новости
Затем я настроил виртуальный хост в MAMP. Файл vhosts.conf вы найдете в /Applications/MAMP /conf /apache
Мой хост-файл выглядит следующим образом
NameVirtualHost *
<VirtualHost *>
DocumentRoot "/Applications/MAMP/htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *>
DocumentRoot "/Applications/MAMP/htdocs/mysite-folder"
ServerName mysite.local
</VirtualHost>
Надеюсь, это поможет: D
Комментарии:
1. Я попробовал ваше предложение виртуального хостинга, и оно не сработало. для чего используется второе имя сервера, просто для именования? Спасибо
2. Обратите внимание, что со вторым виртуальным хостом («/Applications/MAMP/htdocs /mysite-folder») вам пришлось бы добавить
AllowOverride All
внутри<Directory>
, чтобы mod_rewrite заработал.3. В моем случае мне не нужно было этого делать, я думаю, вам это нужно, если вы переписываете URL, но поправьте меня, если я ошибаюсь. Первое имя сервера — это универсальный локальный хост, вы должны сохранить его там. Второе имя сервера и все последующие должны быть привязаны к конкретному сайту. Не забудьте перезапустить MAMP и перезагрузить файл host при внесении каких-либо изменений.