想要从我的URL中删除公共文件而不将server.php重命名为index.php
试图通过使用以下代码在根目录中创建一个.htaccess文件来解决此问题:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
给我错误404
答案 0 :(得分:2)
默认情况下,将从公共文件夹加载网站。如果要从URL中删除public,请将.htaccess文件从public文件夹复制到根目录,然后将代码替换为以下内容。
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]
RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php