从laravel中删除/ public /,我使用了以下代码
RewriteEngine on
RewriteCond %{HTTP_HOST} ^site.comn$ [NC,OR]
RewriteCond %{HTTP_HOST} ^site.com$
RewriteCond %{REQUEST_URI} !public/
RewriteRule ^(.*) /public/$1 [L]
但现在的问题是我甚至无法访问site.com/files/image.png下保存的文件或类似内容。它向我展示了404页面。
如何修改htaccess以允许访问某些目录。请帮助。
答案 0 :(得分:2)
这是因为您将所有内容重定向到/ public /。您需要从重定向中排除现有的目录和文件。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^site.comn$ [NC,OR]
RewriteCond %{HTTP_HOST} ^site.com$
RewriteRule ^/?$ /public/ [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule ^(.*) /public/$1 [L]