Проблема была с моим конфигом apache. Вот что позволило ему работать, только FollowSymLinks
правило.
<Directory "/Users/Joe/Sites/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory>
Есть ли способ символически связать каталог с помощью ln
моего ~ / Sites / directory в OS X, чтобы разрешения были правильными, чтобы его можно было просматривать в веб-браузере, когда я занимаюсь веб-разработкой на локальном компьютере?
Это то, что я сделал ln -s ~/code/web/yolkportfolio ~/Sites/yolkportfolio
тогда chmod 755
в каталоге, но он по-прежнему не читается.
Любая помощь будет принята с благодарностью.
Проблема была с моим конфигом apache. Вот что позволило ему работать, только FollowSymLinks
правило.
<Directory "/Users/Joe/Sites/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory>
У вас есть несколько вариантов:
1. Если вы работаете apache
с другим пользователем (не вашим) и определенно хотите, DocumentRoot
чтобы указатель указывал на какой-то каталог в вашем доме, вы должны изменить разрешения для своего домашнего каталога (по умолчанию должно быть 750
или 700
), чтобы755
Я бы порекомендовал это, только если это ваш ноутбук или ваш персональный компьютер, и никто другой не имеет к нему доступа.
2. Первый вариант не вариант, но вы все еще хотите, чтобы DocumentRoot
внутри вашего дома, затем вы можете изменить пользователя, который работает apache
. Отредактируйте его файл конфигурации и найдите директивы User
и Group
.
3. Второй вариант по-прежнему не вариант, и все же ... вы хотите вещи в вашем доме. Используйте apache mod_userdir. Со следующей конфигурацией:
<IfModule mod_userdir.c> UserDir public_html UserDir disabled root <Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Indexes Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec <Limit GET POST OPTIONS> Order allow,deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny,allow Deny from all </LimitExcept> </Directory> </IfModule>
Это конфигурация по умолчанию для Apache mod_userdir в Debian. Вы сможете получить доступ к:
/home/your-username/public_html/*
в вашем браузере по следующему адресу:
http://somewhere/your-username/*
4. И, наконец, вы можете разместить DocumentRoot
где - нибудь еще ( /srv/www
, /opt/www
или любой другой ) и разрешения установки по мере необходимости.