Eu tenho a seguinte estrutura para os códigos do meu site em/var/www/html
-- files
---- test.txt
-- app
---- SomePhpCodes.php
---- SomePhpCodes.php
-- public
---- index.php
---- .htaccess
A raiz do documento está definida como "/var/www/html/public", mas também quero que os arquivos sejam acessíveis pelo caminho "http://mywebsite/files/test.txt".
Acho que isso deve ser possível usando mod_rewrite no .htaccess
arquivo interno public
, mas estou lutando para fazer isso.
Tentei adicionar uma regra ao padrão .htaccess
que é fornecido pelo framework Laravel. A corrente .htaccess
se parece com o seguinte:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# The following rule is added by me
RewriteRule files/(.*\.txt) /var/www/html/files/$1 [L]
# Send Requests To Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
O resultado atual é Internal Server Error
ao tentar acessar "http://mywebsite/files/test.txt". Tenho a sensação de que posso ter perdido algumas configurações para tornar a pasta "arquivos" pública, mas não tenho ideia de como fazê-lo.
Estou travado e se alguém puder me ajudar eu agradeço.