Sobre o erro
O erro 403 Proibido significa que o servidor web (daemon httpd) não pode acessar os documentos públicos (as páginas da web) que precisam ser exibidos.
Resultados possíveis do que você fez:
-
Todas as ações em 1 executadas pelo usuário raiz resultam de todos os arquivos de propriedade do root, portanto, o daemon httpd não pode acessá-los.
-
Agora você tem a propriedade de
/opt/lampp/htdocs/
e isso tem os mesmos resultados que o número 1 acima. -
Você não mencionou como as permissões são definidas agora, portanto, não está claro o que está acessível no momento.
Solução possível:
No meu servidor, eu hospedo todos os documentos públicos em /srv/www/
, mas a solução será a mesma.
Conceder a propriedade ao daemon httpd (Apache, Nginx, etc), ou seja:
sudo chown -R www-data:www-data /opt/lampp/htdocs/
Assumindo que o daemon httpd é denominado www-data e pertence ao grupo www-data , caso contrário, você terá que adaptá-lo adequadamente.
Em geral, ao definir um servidor da Web, você deseja que o usuário do servidor seja o proprietário do que será exibido. Nota isto não é o caso de linguagens como Python, onde dizem que um projeto baseado no Django não deve estar dentro do diretório público.