Php .htaccess重写后的重定向

Php .htaccess重写后的重定向,php,apache,.htaccess,redirect,mod-rewrite,Php,Apache,.htaccess,Redirect,Mod Rewrite,在.htaccess文件中,我有以下代码 Options +FollowSymLinks RewriteEngine ON RewriteRule ^home home.php [NC] 将localhost/xvwa/home.php重写为localhost/xvwa/home 现在,我的问题是我仍然可以访问localhost/xvwa/home.php。 我试图进行301重定向,但不断出现forbbiden错误。 当用户尝试转到localhost/xvwa/home.php时,如何重定向

在.htaccess文件中,我有以下代码

Options +FollowSymLinks
RewriteEngine ON

RewriteRule ^home home.php [NC]
将localhost/xvwa/home.php重写为localhost/xvwa/home

现在,我的问题是我仍然可以访问localhost/xvwa/home.php。
我试图进行301重定向,但不断出现forbbiden错误。
当用户尝试转到localhost/xvwa/home.php时,如何重定向到localhost/xvwa/home

第二部分

home.php还包括其他几个.php文件,如header.php和footer.php->如何防止用户直接访问这些文件->是否最好提出BBiden错误或缺少错误?

使用以下规则

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/xvwa/home.php
RewriteRule ^ /xvwa/home [R=301,L]

RewriteRule ^home home.php [NC,L,END]

# deny access
RewriteRule ^(header|footer)\.php - [F,L,NC]
使用以下规则

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/xvwa/home.php
RewriteRule ^ /xvwa/home [R=301,L]

RewriteRule ^home home.php [NC,L,END]

# deny access
RewriteRule ^(header|footer)\.php - [F,L,NC]

Tnx的快速回答,但不幸的是,它没有解决我的问题->我仍然可以直接在home.php上,它根本没有重定向。你在哪里使用rules.htaccess文件在同一个文件夹中作为home.php(xvwa文件夹)/deny access rule只起作用重定向不起作用。非常感谢你。还有一个问题。我使用了你的拒绝访问规则,除了home|u content.php)#deny access RewriteRule^(页眉|页脚|面板| include | home|u content)\.php-[F,L,NC]mmhhhh,如果它在你使用规则的目录中,那么它应该可以工作,如果之后它也不能工作,提出一个关于该问题的新问题,如果有帮助,请接受此作为答案。Tnx用于快速回答,但不幸的是,它没有解决我的问题->我仍然可以直接访问home.php,它根本不会重定向。您在何处使用与home.php(xvwa文件夹)相同文件夹中的rules.htaccess文件/deny访问规则只起作用重定向不起作用。非常感谢你。还有一个问题。我使用了你的拒绝访问规则,除了home|u content.php)#deny access RewriteRule^(页眉|页脚|面板| include | home|u content)\.php-[F,L,NC]mmhhhh,如果它在你使用规则的目录中,那么它应该可以工作,如果之后它也不能工作,提出有关此问题的新问题,如果有帮助,请接受此回答。