htaccess 文件隐藏子文件夹

htaccess file to hide subfolder

我正在努力处理 .htaccess 文件。我在子目录 'wordpress' 中安装了 wordpress。在根文件夹中,如果有具有以下内容的 htaccess:

Order Allow,Deny
Allow from all
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$
RewriteRule !^wordpress/ /wordpress%{REQUEST_URI}  [L,R=301]
</IfModule>

重定向有效,但如何隐藏子文件夹 'wordpress'?

提前致谢

编辑:现在尝试了以下内容但仍然无效:

root htaccess:

Order Allow,Deny
Allow from all
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com
RewriteRule !^wordpress/ wordpress%{REQUEST_URI} [L]
</IfModule>

wordpress htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>

EDIT2:我的整个根 htaccess 现在看起来像这样:

Allow from all
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com
RewriteRule !^wordpress/ wordpress%{REQUEST_URI} [L]

如果我输入 www.example.com,我将被重定向到 example/wordpress/home、example/wordpress/contact 等等...

我想隐藏 wordpress 目录,如 example/home、example/contact 等等

Redirection is working, but how can I hide the subfolder 'wordpress'?

您不应该“重定向”。您应该改为在内部重写请求。删除 R 标志。

例如:

RewriteCond %{HTTP_HOST} ^(www\.)?example\.com
RewriteRule !^wordpress/ wordpress%{REQUEST_URI}  [L]

susbtitution 字符串上的斜杠前缀也不是必需的。

这假设您在 /wordpress 子目录中有标准的 WP .htaccess 文件。

更新:同时确认您已从 WordPress 常规设置中的“网站地址”和“站点地址”中删除了 /wordpress 子目录。