我有一个WordPress网站,将取代现有的网站。现有网站位于根目录(/ public_html)中。目前,我不想删除此网站,而是希望将新网站存储在子文件夹(/ public_html / live)中。
我需要它,所以当有人访问域上的网站时(例如http://www.example.com),子文件夹中的网站将被加载,但用户不知道
我可以在public_html文件夹中使用HTACCESS吗?
谢谢你们。我使用了以下htaccess
RewriteEngine On
RewriteRule ^$ /live/ [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/live/
RewriteRule ^(.*)$ /live/$1
# Add trailing slash to directories within live
# This does not expose the internal URL.
RewriteCond %{SCRIPT_FILENAME} -d
RewriteRule ^live/(.*[^/])$ http://www.domain.com/$1/ [R=301]
这确实会重定向到子文件夹。问题是它是否重定向到所有网页的根域(http://www.domain.com)(例如http://www.domain.com/news,http://www.domain.com/events/test-event)
导致此重定向问题的原因是什么?
干杯
答案 0 :(得分:0)
这是你能做的。
你可以安装一个插件,如:https://wordpress.org/plugins/velvet-blues-update-urls/ 将所有旧网址替换为新网址,这比在.htaccess上执行mod_rewrite更好。你可以使用大量的其他插件;使用最适合你的那个。
您想要重新命名网址。 mod_rewrite正在重写到新的url。它会完成这项工作,但这种方式更好。从某种意义上说,在您的新wordpress实例上,您希望能够跟踪网址并按照新网址的顺序保持流量趋势。
制作旧wordpress的副本,将新实例放在新目录中,更改网址,然后测试您的网址,然后将域指向包含新网址的更新后的wordpress。
如果你需要特定网址处理,你应该在.htaccess上使用mod_rewrite规则,我不会将整个网站转发到新域名。你应该在物理上改变网址。