htaccess重定向到同一域中的其他文件夹

时间:2013-09-25 09:40:42

标签: php apache .htaccess redirect

我有一个网站abc.com我保存了所有文件和文件夹。现在我创建了一个名为“newsite”的文件夹,并将所有文件移到那里。现在我想如果我的用户在浏览器中键入abc.com,它会自动将它们重定向到abc.com/newsite

我正在使用带有godaddy托管的linux服务器。我知道这可以通过htaccess文件来完成。任何人都可以帮我吗?

我在htaccess文件中使用它,但这不起作用

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.abc.com$
RewriteRule (.*)$ /newsite$1 [R,L]
</IfModule>

非常感谢你提前

3 个答案:

答案 0 :(得分:7)

这应该这样做:

Options +FollowSymLinks -MultiViews

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} !^/newsite [NC]
RewriteRule ^ /newsite%{REQUEST_URI} [R=301,L]

RewriteCond检查网址是否以/newsite开头,否则会将用户重定向到该网址。

答案 1 :(得分:0)

试试这个解决方案:

RewriteRule ^xxx/?([^/].*)?$ old/xxx/$1 [L]

或者

 RewriteRule ^(.*)directory(.*)$ $1otherdir$2 [QSA,L,R=301,NC]

答案 2 :(得分:0)

嘿,朋友,是对的:

RewriteEngine On RewriteBase /

RewriteCond%{REQUEST_URI}!^ / 你的新文件夹 [NC] RewriteRule ^ / yournewfolder %{REQUEST_URI} [R = 301,L]

仅在您的public_html文件夹(站点根目录)内的.htacces中

新文件夹是包含您网站文件的文件夹。如果您使用wordpress,请使用Softaculous将您网站的整个内容克隆到新文件夹。

请记住,您必须更改数据库的信息。 - 登录您的phpMyAdmin帐户,将数据库导出到计算机上的某个位置(使用 自定义选项 - 显示所有可能的选项 以导出和维护导出的数据库的备份 - 如果您遗漏了某些内容,您将有此保险文件再次导入它。

然后在php编辑器上打开yourdatabasename.sql文件,使用replace选项并进行以下更改:

EX:yoursite.com
(替换选项)yoursite.com/yournewfolder

保存已编辑的文件。现在返回到您的phpMyAdmin帐户并删除旧数据库(选择所有表并使用删除选项),删除后,转到导入选项并导入已编辑的新数据库。

度过美好的一天。