.HTACESS目录是URL的一部分


.HTACCESS directory part of a URL

我真的不明白.htaccess是如何工作的尽管我对Java/PHP很满意

我正在尝试重命名URL

http://mywebsite.com/olddir/index.php

http://mywebsite.com/newdir/index.php

还想重命名旧目录中的所有内容,因此如果它的

http://mywebsite.com/olddir/process.php?do=this

它将是

http://mywebsite.com/olddir/process.php?do=this

尝试这个规则很简单:

RewriteRule ^/olddir/(.*)$ /newdir/$1

这是非常基本的-检查是否有olddir模式并重定向到newdir。

如果这不起作用,请确保你已经成功安装了modrewrite,并且你已经使用以下行启用了重写:

RewriteEngine On

如果这还不起作用,请检查您是否在目录指令中启用了更改设置,必须有这样一行:

AllowOverride all

此行允许您更改.htaccess文件中的几个设置。

您需要将^$添加到您的模式中:

RedirectMatch 301 ^/olddir(.*)$ /newdir/$1

或者使用mod_rewrite:

RewriteEngine On
RewriteRule ^olddir/(.*)$ /newdir/$1 [L,R=301]