Я установил выпуск сервера человечности 12.04 для своего ПК сервера. я установил сервер лампы. я должен изменить var/www местоположение к своему вторичному местоположению жесткого диска. я был настроен так многие, время к в gedit/etc/apache2/sites-available/default вот является моим кодом
<VirtualHost *:80>
ServerAdmin webmaster@localhost
#DocumentRoot /var/www
DocumentRoot /media/myserver/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#<Directory /var/www/>
<Directory /media/myserver/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
и также используемый
sudo chown -R var/www /media/myserver/
и
chmod -R 755 /media/myserver/
тем не менее я не смог соединить свой/media/myserver, и мой браузер показывают следующее сообщение
Forbidden
You don't have permission to access / on this server.
Скажите любому, как смонтировать myserver в моем var/www, спасибо усовершенствование
Вам нужно будет отредактировать apache2.conf
и 000-default.conf
, чтобы изменить корень документа apache.
Apache сервер установлен в / var / www / html
. Это корневой каталог apache по умолчанию.
Либо измените корневой каталог Apache, либо переместите проект в / var / www / html
.
Чтобы изменить корневой каталог Apache, выполните:
cd / etc / apache2 / sites-available
Затем откройте файл 000-default.conf
с помощью команды:
nano 000-default.conf
Отредактируйте параметр DocumentRoot
:
DocumentRoot / path / to / my / project
Затем перезапустите сервер apache:
sudo service apache2 restart
Если вы получили Запрещено У вас нет разрешения на доступ / на этом сервере
после изменения корня apache, выполните следующие действия.
Найдите apache2.conf
находится в / etc / apache2
и откройте его с помощью:
nano apache2.conf
Используйте Ctrl + W и найдите каталог (он должен быть в строке 153)
Он должен выглядеть так
Индексы опций FollowSymLinks
AllowOverride All
Требовать все отклонено
Измените его на
Индексы опций FollowSymLinks Включает ExecCGI
AllowOverride All
Требовать все предоставлено
Перезапустить apache
sudo service apache2 restart
Я написал сценарий, который изменяет корень apache с помощью одной команды. Вы можете найти его на моем github .
Может быть, немного опоздал. Но все же...
Вам следует отредактировать права доступа к вашему каталогу в apache.conf в разделе /etc/apache2
Поиск этого
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
и добавить под него этот код, который дает права доступа к вашему каталогу
<Directory /media/myserver/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Просто измените корень документа в вашей активированной конфигурации. / etc / apache2 / sites-enabled / 000-по умолчанию
, а затем Убедитесь, что вы перезагружаете свой apache.
Так что попробуйте следующее:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /media/myserver/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /media/myserver/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Затем нужно дать соответствующее разрешение следующим образом:
sudo adduser <username> www-data
sudo chown -R www-data:www-data /media/myserver/
sudo chmod -R g+rw /media/myserver/
sudo gedit etc / apache2 / apache2.conf
Добавь это
Параметры Индексы FollowSymLinks MultiViews
AllowOverride Нет
Заказать разрешить, запретить
разрешить от всех
в виртуальной конфигурации: /etc/apache2/sites-available/site.conf
ServerAdmin anilrmg@localhost.com
ServerName anilrmg.localhost.com
ServerAlias www.anilrmg.localhost.com
DocumentRoot /home/anilrmg/projects/code/anilrmg
sudo a2dissite 000-default.conf
В качестве быстрого обходного пути (безопасного и быстрого) вы можете сделать точку монтирования внешнего жесткого драйвера в корневой каталог по умолчанию (/ var / www по умолчанию).
Назначение монтирования указание на существующий каталог безопасно, но старое содержимое не может быть достигнуто, если вы не отключите драйвер.
Чтобы узнать больше о том, как создать точку крепления, обратитесь к здесь .
Для тех, кто использует гостевые дополнения VirtualBox и получает , у вас нет разрешения на доступ /на этом сервере
, несмотря на все, что было упомянуто выше:
Если вы пытаетесь установить корневую папку документа Apache в общую папку VirtualBox, и вы все это перепробовали, а это не помогло, есть еще один шаг.
Короче говоря, это не так, Решение заключается в добавлении пользователя 'www-data' в группу 'vboxsf':
sudo usermod -a -G vboxsf www-data
Вы не можете изменить владельца и/или группу общей папки VirtualBox, но вышеприведенное решение отлично сработало для меня.
Я тоже столкнулся с той же проблемой и мог бы ее решить!
Вам нужно
изменить apache2.conf. Замени / var / www /
на свой путь:
<Каталог / ваш / путь />
Индексы опций FollowSymLinks
AllowOverride Нет
Требовать все предоставлено
Измените 000-default.conf:
DocumentRoot / your / path /
измените право собственности на каталоги на себя из файлового менеджера или терминала (например, sudo chown pi: path) Без этого вы получите сообщение «У вас нет разрешения на доступ к этому серверу». сообщение об ошибке.
Вот и все.
Я должен был убедиться, что весь путь предоставлен Apache.
chown www-data /media;
chown www-data /media/MNT/;
chown www-data /media/MNT/DISK;
chown www-data /media/MNT/DISK/www-root;