Regex 重写规则^^$1[N]:它在.htaccess中的作用

Regex 重写规则^^$1[N]:它在.htaccess中的作用,regex,laravel,.htaccess,mod-rewrite,Regex,Laravel,.htaccess,Mod Rewrite,在laravel项目中,我找到了一段.htaccess url规则的代码,但不了解它的实际功能,我试着在谷歌上找到它,但没有成功 RewriteCond %{REQUEST_FILENAME} -d [OR] RewriteCond %{REQUEST_FILENAME} -f RewriteRule ^ ^$1 [N] 这个RewriteRule^^$1[N]是什么意思regex? 更新:完整的.htaccess文件以从laravel url中删除public/ <IfModule m

在laravel项目中,我找到了一段.htaccess url规则的代码,但不了解它的实际功能,我试着在谷歌上找到它,但没有成功

RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]
这个
RewriteRule^^$1[N]是什么意思
regex?

更新:完整的.htaccess文件以从laravel url中删除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

</IfModule>

选项-多视图
重新启动发动机
RewriteCond%{REQUEST_FILENAME}-d[或]
RewriteCond%{REQUEST_FILENAME}-f
重写规则^^$1[N]
重写条件%{REQUEST\u URI}(\.\w+$)[NC]
重写规则^(.*)$public/$1
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
重写规则^server.php

N标志只是一个“转到顶部”,使重写过程重新从头开始。我无法理解
^$1
但是-不知道
^
应该在那里实现什么,也不知道
^$1
应该从哪里来,因为没有捕获任何正在进行的事情(至少没有在您显示的内容中,可能还有更多内容)用完整的.htaccess代码更新,唯一一个像charm一样工作的解决方案要确认,此
.htaccess
文件位于文档根目录中?在
/public
子目录中是否还有另一个
.htaccess
文件?您的URL实际上不包含
/public
server.php
在哪里?你知道这些指令是从哪里来的吗?(相同的指令块最近似乎出现过几次?我没有-没有解释-至少有2年了。)你的URL的格式是什么?它们是否总是包含“文件扩展名”,例如
.html
?不,我的URL没有扩展名
N
标志只是一个“转到顶部”,使重写过程从头开始。我无法理解
^$1
但是-不知道
^
应该在那里实现什么,也不知道
^$1
应该从哪里来,因为没有捕获任何正在进行的事情(至少没有在您显示的内容中,可能还有更多内容)用完整的.htaccess代码更新,唯一一个像charm一样工作的解决方案要确认,此
.htaccess
文件位于文档根目录中?在
/public
子目录中是否还有另一个
.htaccess
文件?您的URL实际上不包含
/public
server.php
在哪里?你知道这些指令是从哪里来的吗?(相同的指令块最近似乎出现过几次?我没有-没有解释-至少有2年了。)你的URL的格式是什么?它们是否总是包含“文件扩展名”,例如
.html
?不,我的URL没有扩展名