我将网站重定向到我创建的子目录。该子目录包含WordPress的安装,现在我想屏蔽网站上的子目录网址。
现在它类似http://mywebsite.com/apt/
我想从URL中删除/ apt /。
我今天尝试了一切,在Google上搜索过,试图在我在这里找到的htaccess上写各种各样的东西,但没有任何作用。
在网站主目录的htaccess上,我使用此代码重定向
RewriteCond %{HTTP_HOST} ^mywebsite.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.mywebsite.com$
RewriteRule ^/?$ "http\:\/\/www\.mywebsite\.com/\apt" [R=301,L]
在/ apt /文件夹中我有
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /apt/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /apt/index.php [L]
</IfModule>
# END WordPress
有人可以建议我如何从URL隐藏/ apt / extension? 非常感谢。
答案 0 :(得分:11)
试试这个: 删除重定向部分然后使用此insead:
RewriteCond %{THE_REQUEST} ^GET\ /apt/
RewriteCond %{HTTP_HOST} ^(www\.)?mysite.com$
RewriteRule ^apt/(.*) /$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^(www\.)?mysite.com$
RewriteRule !^apt/ apt%{REQUEST_URI} [L]
然后对主网站使用相同的代码。
答案 1 :(得分:0)
如果你想从url中删除/ apt为什么要将“/”重定向到“/ apt”? 试试这个:
RewriteRule !^apt/ /apt%{REQUEST_URI} [L,NC]
而不是
RewriteRule ^/?$ "http\:\/\/www\.mywebsite\.com/\apt" [R=301,L]
通过此重写,您应该在url www.mywebsite.com
下的/ apt文件夹中看到您的应用程序答案 2 :(得分:0)
在根文件夹中创建.htaccess文件,并将此内容放入其中(只需更改example.com
和my_subdir
):
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/my_subdir/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /my_subdir/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ my_subdir/index.php [L]
</IfModule>