Як змінити корінь документа для Apache2 в Mac OS X


13

Розташоване за замовчуванням корінь документа за httpd.conf є /Library/WebServer/Documents. Я хочу, щоб це місце було /webcontent. Для цього я створив папку веб-вмісту в root (/). Потім у httpd.conf:

  • Змінено кореневу рядок документа на DocumentRoot /webcontent
  • Змінено тег каталогу на <Directory "/webcontent">;

Після перезапуску Apache я отримую таку сторінку:

Заборонено

Ви не маєте дозволу на доступ / на цьому сервері.

Чи може хто-небудь скажіть мені, чи потрібно мені змінювати будь-які дозволи будь-де, щоб змінити корінь документа?


У вас index.htmlзберігається в /webcontent/?
граф

Ні, але у мене тест test.html розміщений у папці webcontent. Коли я отримую доступ до нього, я отримую цю заборонену помилку. Чи обов’язково додати index.html?
tintin

Відповіді:


10

У httpd.confфайлі, що надається в OS X, за замовчуванням заперечується, що блокує кожен каталог від кожного клієнта. Потім він дозволяє отримати доступ до DocumentRootкаталогу - це було б за замовчуванням /Library/WebServer/Documents. Перегорніть сторінку у цьому файлі, і ви побачите:

<Directory "/Library/WebServer/Documents">
    # [...]
    Options Indexes FollowSymLinks MultiViews

    # [...]
    AllowOverride None

    # [...]
    Order allow,deny
    Allow from all

</Directory>

Зміни "/Library/WebServer/Documents"біт на "/webcontent"і ти добрий.


0

Щоб відповісти на відповідь @Bred Ackerman, якщо ви використовуєте apache vhost, вам потрібно буде додати: private / etc / apache2 / extra / httpd-vhosts.conf

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot "/Users/fred/Sites"
    ServerName 127.0.0.1
    ServerAlias localhost
    ErrorLog "/private/var/log/apache2/localhost-error_log"
    CustomLog "/private/var/log/apache2/localhost-access_log" common
</VirtualHost>
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.