Altere a pasta raiz do documento Apache para o disco rígido secundário

15

Instalei a edição do servidor do Ubuntu 12.04 para o meu pc do servidor. Eu tinha instalado o servidor da lâmpada. Eu preciso alterar o local var / www para o meu local de disco rígido secundário. Eu estava configurado tanto tempo em gedit / etc / apache2 / sites-available / default aqui está o meu código

<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>

e também usado

sudo chown -R var/www /media/myserver/

e

chmod -R 755 /media/myserver/

ainda não consegui conectar meu / media / myserver e meu navegador mostra a seguinte mensagem

Forbidden

You don't have permission to access / on this server.

Por favor, conte a qualquer um como montar o meu servidor no meu var / www, obrigado antecipadamente

    
por Kevin - Dhinesh babu 27.08.2013 / 14:38

6 respostas

19

Você terá que editar apache2.conf e 000-default.conf para alterar a raiz do documento do apache.

O servidor Apache está instalado em var/www/html .Este é o diretório raiz padrão do apache.

Altere o diretório raiz do Apache ou mova o projeto para /var/www/html .

  1. Para alterar o diretório raiz do Apache, execute:

    cd /etc/apache2/sites-available
    
  2. Em seguida, abra o arquivo 000-default.conf usando o comando:

    nano 000-default.conf
    
  3. Edite a opção DocumentRoot :

    DocumentRoot /path/to/my/project
    
  4. Em seguida, reinicie o servidor apache:

    sudo service apache2 restart
    

Se você obtiver Forbidden You don't have permission to access / on this server após alterar a raiz do apache, siga estas etapas

  1. Encontre o apache2.conf localizado em /etc/apache2 e abra-o usando:

    nano apache2.conf
    
  2. Use Ctrl + W e procure pelo diretório (ele deve estar na linha 153)

  3. Deverá ter esta aparência

    <Directory />
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all denied
    </Directory>
    
  4. Altere para

    <Directory />
        Options Indexes FollowSymLinks Includes ExecCGI
        AllowOverride All
        Require all granted
    </Directory>
    
  5. Reinicie o apache

    sudo service apache2 restart
    

Eu fiz um script que muda a raiz do apache em um único comando. Você pode encontrá-lo no meu github .

    
por Harjot 24.02.2016 / 14:23
15

Talvez um pouco atrasado. Mas ainda assim ...

Você deve editar suas permissões de diretório no apache.conf em / etc / apache2

Pesquise por isso

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

e adicione este código abaixo, que dá a permissão para acessar seu diretório

 <Directory /media/myserver/>
            Options Indexes FollowSymLinks
            AllowOverride None
            Require all granted
    </Directory>
    
por onurbekiroglu 15.02.2014 / 13:10
2

Basta alterar a raiz do documento na sua configuração ativada. /etc/apache2/sites-enabled/000-default e depois Certifique-se de recarregar seu apache.

Então, tente com isso:

<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>

Então a devida permissão deve ser dada assim:

sudo adduser <username> www-data
sudo chown -R www-data:www-data /media/myserver/
sudo chmod -R g+rw /media/myserver/
    
por Achu 27.08.2013 / 15:06
0

sudo gedit etc/apache2/apache2.conf Adicione isso       Opções de índices FollowSymLinks MultiViews     AllowOverride Nenhum     Ordem permitir, negar     permitir de todos

na configuração virtual: /etc/apache2/sites-available/site.conf

ServerAdmin [email protected]
ServerName anilrmg.localhost.com
ServerAlias www.anilrmg.localhost.com
DocumentRoot /home/anilrmg/projects/code/anilrmg

sudo a2dissite 000-default.conf

    
por Anil Gupta 17.03.2015 / 11:59
0

Para aqueles que usam adições de convidados do VirtualBox e recebem you don't have permission to access /on this server apesar de tudo mencionado acima:

Se você está tentando definir a pasta raiz de documentos do Apache para uma pasta compartilhada do VirtualBox, e tentou tudo acima e isso não ajudou, há mais uma etapa.

Em suma, a solução é adicionar o usuário 'www-data' ao grupo 'vboxsf':

sudo usermod -a -G vboxsf www-data

Você não pode alterar o proprietário e / ou o grupo da pasta compartilhada do VirtualBox, mas a solução acima funcionou bem para mim.

    
por Yuri Fedorov 27.05.2016 / 18:01
0

Como uma solução rápida (segura e rápida), você pode fazer o ponto de montagem do seu disco rígido externo para o diretório raiz padrão (/ var / www por padrão).

Atribuir o ponto de montagem a um diretório existente é seguro, mas o conteúdo antigo não pode ser alcançado, a menos que você desmonte o driver.

Para saber mais como criar um ponto de montagem, consulte isto .

    
por yahya tawil 27.05.2017 / 11:24