6

我的目标是:

domain.com/folder

重写->

domain.com

这将涉及该站点内的所有链接。我的意思是网站上的链接如下:

domain.com/folder/forum.html
domain.com/folder/community.html

等等

这是我的目标:

domain.com/forum.html
domain.com/community.html

等等

非常重要的是,“文件夹”永远不会在地址栏中的 url 中可见。

我已经尝试了很多代码,但我无法真正解决这个问题。我最好的尝试是使用以下代码:

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_URI} !(.*)folder
RewriteRule ^(.*)$ folder/$1 [L]

如果我输入

 domain.com 

我得到的内容

 domain.com/folder

显示,什么是正确的(“文件夹”不在显示的 url 中)。但是,当我单击该站点的某些链接时,例如: domain.com/folder/community.html 然后我可以在 url 中再次看到“文件夹”,但我希望它总是被删除。

这是我的网站:

thewedgiecommunity.x10.mx/wedgiecommunity/

我的目标是删除“wedgiecommunity”(=文件夹)此链接有效

  thewedgiecommunity.x10.mx/

但是当您单击社区时(

 thewedgiecommunity.x10.mx/wedgiecommunity/community.html

) 然后我在 URL 中再次获得“wedgiecommunity”。

当有人可以帮助我时会很棒

4

2 回答 2

7

您可以使用以下代码:

进入 DOCUMENT_ROOT/wedgiecommunity/.htaccess:

RewriteEngine On

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+wedgiecommunity([^\s]*) [NC]
RewriteRule ^ %1 [R=301,L]

进入 DOCUMENT_ROOT/.htaccess:

RewriteEngine On

RewriteRule !^/?wedgiecommunity wedgiecommunity%{REQUEST_URI} [L,NC]
于 2013-10-15T19:25:29.523 回答
1

当通过浏览器直接访问该文件夹时,您可以使用此规则从 URL 中“删除”该文件夹:

RewriteCond %{THE_REQUEST} \ /wedgiecommunity/
RewriteRule ^wedgiecommunity/(.*)$ /$1 [L,R=301]

然后你的其他规则将处理其余的。

于 2013-10-15T19:24:53.077 回答