我在托管空间安装了一个Wordpress网站,其中已有一个活跃的网站。我不想删除它,所以我将Wordpress放在它自己的目录中,具有:http://domain.com/wordpress
在我设置的wp-config.php
文件中:
define('WP_HOME', 'http://domain.com/wordpress/');
define('WP_SITEURL', 'http://domain.com/wordpress/');
然后,我在root中创建了一个.htaccess
文件,在wordpress文件夹中创建了一个文件。它们分别包含:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$
RewriteRule ^(/)?$ wordpress [L]
和
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
这样,当我转到http://domain.com/时,我会被重定向到http://domain.com/wordpress,网站上的所有内容都能正常运行。但我想要的是让网址只显示http://domain.com,而不是“wordpress”部分。我只能使用.htaccess
?
我面临的另一个问题是有一个重定向域集。这个http://otherdomain.com
指向http://domain.com。这个其他域应该是主要的域。现在,当我访问http://otherdomain.com时,网站显示正确;链接正在运行,但网址不会相应更改:无论如何,它始终显示http://otherdomain.com。
到目前为止,我尝试搜索和替换数据库中的所有条目,替换域并相应地修改其他选项。这样做的网站显示没有CSS,没有图像,没有链接工作。
答案 0 :(得分:0)
要解决子文件夹问题,请尝试替换
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
与
RewriteEngine on
RewriteCond %{HTTP_HOST} ^yourdomain.com$
RewriteCond %{REQUEST_URI} !^/wordpress/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /wordpress/$1
RewriteCond %{HTTP_HOST} ^yourdomain.com$
RewriteRule ^(/)?$ wordpress/index.php
不要忘记将yourdomain.com替换为确切的域名。
此外,请恢复数据库更改,因为现在WordPress正在尝试在根目录中查找文件。
如果这不起作用,您的主机帐户面板中可能会有这样的重定向选项。