PHP中的URL路由(MVC)



我正在构建一个自定义MVC项目,我有一个基本文件夹/mvc,其中包含.htaccessroutes.php文件,并放置在C:xampphtdocs根文件夹。以下是我的文件:

C: xampp 根 mvc . htaccess

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} !.*.png$ [NC]
RewriteCond %{REQUEST_URI} !.*.jpg$ [NC]
RewriteCond %{REQUEST_URI} !.*.css$ [NC]
RewriteCond %{REQUEST_URI} !.*.gif$ [NC]
RewriteCond %{REQUEST_URI} !.*.js$ [NC]
RewriteRule ^((?!routes.php).+)$ /mvc/routes.php [L]
</IfModule>

C: xampp 根 mvc routes.php

<?php
# Routing logic goes here...
<标题>

我想将routes.php移动到mvc/app文件夹中,因此我更改了.htaccess

中的这一行
RewriteRule ^((?!routes.php).+)$ /mvc/routes.php [L]

到这行:

RewriteRule ^((?!routes.php).+)$ /mvc/app/routes.php [L]

但这似乎不起作用!我得到一个500错误。我在这里做什么?我想将所有请求(包括任何.php或其他文件请求,不包括图像)重定向到mvc/app/routes.php,它将处理HTTP请求并将它们定向到适当的控制器。

Try with:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} !.(png|jpg|css|gif|js)$ [NC]
RewriteRule ^((?!app/routes.php).+)$ /mvc/app/routes.php [L]
</IfModule>

最新更新