将网站移动到子目录

时间:2014-12-23 11:59:47

标签: .htaccess redirect

我正在开发一个新版本的网站,我想将旧版本的文件/文件夹移到一个旧版本的子目录中。有没有办法保持所有链接(css,引用"包括"文件夹和文件等)使用重定向规则,而不必手动编辑所有php文件?

谢谢!

2 个答案:

答案 0 :(得分:2)

您可以将所有旧文件移动到目录old,然后在root .htaccess中重写规则,如下所示:

RewriteEngine On
RewriteBase /

# if file exists inside old then append /old/ in front of it
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/old/$1 -f [NC]
RewriteRule ^(.+?)/?$ old/$1 [L]

答案 1 :(得分:0)

不,不是我所知道的。

如果您使用phpstorm,您可以轻松地在所有页面上重构引用,这可能会解决您的问题。

对于未来的项目,使用变量$absolutePath = "C:\...\"是一种很好的做法 并保存其中主目录的路径,并在所有文件中使用该变量。

链接到您将执行的图像,如下所示:

$imagepath = $absolutepath."subdirectory\image.jpg";

如果您移动网站,则只需更改一个变量即可。 这也是你应该考虑使用其他常用的变量,如mysql信息。