Я много лет использовал сервер MAMP и Ubuntu, но недавно попытался использовать встроенный сервер Apache в Mac OS X 10.7.5. Моя проблема в том, что некоторые из моих файлов .htaccess читаются, а некоторые нет. У меня есть 2 сайта и вот их настройки vhost:
<VirtualHost *:80>
ServerName site1.rob
DocumentRoot /Users/username/Sites/localSites/site1/public/
<Directory />
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName site2.rob
DocumentRoot /Users/username/Documents/Dropbox/site2/public/
<Directory />
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Сайт 1 работает так, как должен, а сайт 2 - нет. Итак, я провел тест. В каждом из файлов .htaccess я проверил среду.
SetEnv HTACCESS on
Затем я сделал в корне файл PHP с этой проверкой.
var_dump($_SERVER['HTACCESS']);
Мой результат для сайта 1: string(2) "on"
Мой результат для сайта 2: null
На обоих сайтах, если я просто захожу в /index.php, они работают правильно. Любая подсказка, что я могу сделать для устранения неполадок отсюда? Права доступа к файлам?
Кажется, я случайно наткнулся на ответ. Я искал в другой папке в / etc / apache2 / и обнаружил, что увидел каталог с именем users. Там был файл .conf с моим именем пользователя. Там был только один, для которого AllowOverride было установлено значение None. Этот файл conf, должно быть, переопределял vhost. Я установил его на все, и теперь он вроде работает нормально.