为什么要使用。htaccess是否执行此操作?为什么不直接移动到新的URL?
备选方案包括向您的中添加类似于以下内容之一的内容。htaccess文件(请注意,在这两种情况下,301“永久移动”代码都会发送回浏览器):
RedirectMatch 301 /e /wp
或
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domainname\\.com/e [NC]
RewriteRule ^(.*)$ http://www.domainname.com/wp/$1 [R=301,L]
</IfModule>
或者使用wp配置。php文件,在顶部定义以下两个常量:
define(\'WP_SITEURL\', \'http://www.domainname.com/wp\');
define(\'WP_HOME\', \'http://www.domainname.com/wp\');
或者更好(避免重定向,避免WordPress进行即时转换),使用wp cli工具安全地进行全局搜索和替换,以便在整个WordPress站点中将旧URL更改为新URL:
su -s /bin/bash www-data -c "wp search-replace \'http://www.domainname.com/e\' \'http://www.domainname.com/wp\' --recurse-objects"
上面的示例强制wp cli工具在www数据用户帐户的安全上下文中运行,因此请根据需要进行调整。如果您在WordPress精通的托管服务上运行该站点,他们将有关于如何在其服务器上使用wp cli的说明。