我的网站代码具有以下结构/var/www/html
-- files
---- test.txt
-- app
---- SomePhpCodes.php
---- SomePhpCodes.php
-- public
---- index.php
---- .htaccess
文档根目录设置为“/var/www/html/public”,但我也希望通过路径“http://mywebsite/files/test.txt”访问文件。
.htaccess
我认为在里面的文件中使用 mod_rewrite 必须是可能的,public
但我正在努力这样做。
我尝试向.htaccess
Laravel 框架提供的默认规则添加一个规则。电流.htaccess
如下所示:
<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>
当前结果是Internal Server Error
尝试访问“http://mywebsite/files/test.txt”时。我有一种感觉,我可能错过了一些设置来公开“文件”文件夹,但我不知道该怎么做。
我被困住了,如果有人可以帮助我,我将不胜感激。