如何使用.htaccess从URL隐藏文件夹名称

时间:2015-05-19 11:06:16

标签: php .htaccess redirect

我有一个域example.com我想将它重定向到example.com/public但是/ public文件夹应该隐藏在url中。

我在.htaccess中使用以下代码进行重定向,但无法隐藏文件夹名称

RewriteEngine on

RewriteCond %{HTTP_HOST} ^example\.com$

RewriteRule (.*) http://www.example.com/$1 [R=301,L]

RewriteRule ^$ public [L]

请帮我解决这个问题。

3 个答案:

答案 0 :(得分:1)

你可以试试这个

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/(public)
RewriteRule (.*) /public/$1

答案 1 :(得分:1)

这应该是你完整的.htaccess:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteCond %{REQUEST_URI} !/$
RewriteRule (.*) $1\.php [L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+dirname/([^\s]+) [NC]// here you write your directory
RewriteRule ^ %1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (?!^dirname/)^(.*)$ /dirname/$1 [L,NC]

答案 2 :(得分:0)

试试这个

RewriteEngine On    
RewriteRule (.*) public/$ [QSA,L]