Altere seu arquivo .htaccess para:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
para permitir que links simbólicos funcionem
Além das configurações acima, vejo que você tem uma pasta adicional chamada M1-CSI in public_html link em /var/www/htnl . Agora observe que apache usa o /var/www/html como pasta raiz, portanto, o seu index.php está em /var/www/html de em uma pasta do seu projeto, localizado em /var/www/html/project_folder .
Portanto, configure o projeto slim em /home/user/public_html e o public_html como root para slim . Seu link simbólico deve ter sido ... sudo ln -s /home/user/public_html /var/www/html/ com a pasta /public_html como root. Para usar M1-CSI , você precisará usar um arquivo Virtualhost e, é claro, midificar sua linha require vendor/autoload.php para require ../vendor/autoload.php .
Outra observação é o fato de que sua propriedade é root , mas agora não é isso que você quer, o usuário www-data deve ser responsável por esses arquivos. Adicione-se a esse grupo:
sudo usermod -a -G www-data $USER
Em seguida, altere a propriedade desse arquivo para:
sudo chown -R $USER.www-data /var/www/html/public_html
sudo chmod -R 755 /var/www/html/public_html
Observação: uma reinicialização será necessária para que o novo grupo seja definido.
Como eu configuro meu projeto slim usando este link :
-
Criei uma pasta em
/var/www/htmlchamadaaskubuntu -
cd /var/www/html/askubuntu -
composer require slim/slim "^3.0" -
Em seguida, criou um arquivo
index.phpna pastaaskubuntucom as seguintes linhas:<?php require 'vendor/autoload.php'; echo "Hello World slim framework!"; ?> -
Abra o meu navegador e digite:
localhost/askubuntue imprime a saída esperada.