Como dar permissões de diretório e arquivo para um servidor da web

3

Sou um novato no Linux. Eu estou fazendo um projeto que usa o mecanismo de roteamento gosmore. Em um dos meus e-mails para o desenvolvedor sobre um determinado problema, ele me respondeu que para resolver o problema:

"Eu acho que você terá que mover o diretório gosmore para um diretório home e dar ao servidor Web direitos de leitura e execução. Na minha instalação do Ubuntu esta é a / home / lambertus / gosmore e minhas páginas são executadas em / home / lambertus / public_html / yours ".

Eu movi os arquivos necessários para meu diretório pessoal e o CHMOD usando este comando:

chmod -R 755 gosmore/

A questão é que, quando eu "ls -l" para o diretório gosmore, ele mostra que eu já tinha definido a permissão corretamente (drwxr-xr-x ...). Mas quando eu verifico Permissões no diretório gosmore (clique com o botão direito em > Propriedades), as permissões ainda não estão definidas. Por causa disso, minha instalação gosmore ainda não funciona. O que posso fazer para definir verdadeiramente as permissões necessárias para os diretórios? Desde já, obrigado! : D

    
por jalbautista 27.10.2010 / 10:33

1 resposta

2

Verifique se você está olhando para o mesmo diretório. Nautilus (a GUI) e ls (no terminal) mostrarão as mesmas permissões. Onde você acabou colocando o diretório gosmer ? Normalmente, isso precisa ser /home/USER/public_html/gosmer para o servidor da web para ver como http://localhost/~USER/gosmer/ . Para ativar public_html , use sudo a2enmod user_dir .

Por fim, o seu servidor da Web está configurado para executar o idioma que o gosmer usa? Por exemplo, o PHP precisaria de libapache2-mod-php instalado, e se gosmer usasse CGI, você precisaria ativar o módulo CGI ( sudo a2enmod cgi ) e permitir (adicione ExecCGI à diretiva Options para seu host virtual em as configurações do Apache, por exemplo:

<Directory /somewhere>
  AllowOverride All
  Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec ExecCGI
  IndexOptions NameWidth=*
<Directory>

Isso pode precisar ser feito em /etc/apache2/mods-available/userdir.conf se você estiver usando public_html como destino.

    
por Kees Cook 01.11.2010 / 19:18