我正在尝试重写域的URL。
www.example.com/dir1/
至www.example.com/dir2/
和
sub1.example.com/dir1/
至sub1.example.com/dir2/
问题是sub1是一个WordPress多站点,与根域共享相同的htaccess,并且/ dir1 /的重定向将两个域都重定向到https://www.example.com/dir2/
找不到关于Stack Overflow的答案,这是一个交通繁忙的现场站点,我无力炸毁它。
答案 0 :(得分:0)
请确保您的apache配置中的两个目录都启用了AllowOverwrite ALL
。
<Directory /var/www/example.com>
AllowOverride All
</Directory>
<Directory /var/www/example.com/sub1>
AllowOverride All
</Directory>
添加后,请在.htaccess
的根目录中创建example.com
文件
这会将example.com/dir1/
重定向到example.com/dir2/
RewriteEngine on
Redirect 301 /dir1 http://example.com/dir2
然后,在wordpress所在的子目录文件夹中创建另一个.htaccess
文件。
这会将sub1.example.com/dir1/
重定向到sub1.example.com/dir2/
RewriteEngine on
RewriteRule ^/?dir1/(.*)$ /dir2/$1 [R,L]
之后,
sudo service apache2 restart
sudo a2enmod rewrite