我真的很难解决.htaccess问题并让Wordpress非常永久地工作,并删除index.php。我的网络服务器有以下目录:
webroot
-mydomain1 [wordpress folder]
-mydomain2
-mydomain3
在我的webroot中,我在root中有以下.htaccess文件,代码如下。此重定向工作正常,并将每个域指向相关的子文件夹。
#Turns the rewrite engine on.
RewriteEngine on
#Fix missing trailing slash character on folders.
RewriteRule ^([^.?]+[^.?/])$ $1/ [R,L]
#www.mydomain1.ca and mydomain1.ca will map to the folder
{root}/mydomain1/
RewriteCond %{HTTP:Host} ^(?:www\.)?mydomain1\.ca$
RewriteRule (.*) /mydomain1/$1 [NC,L,NS]
#www.mydomain2.com and mydomain2.com will map to the folder
{root}/mydomain2/
RewriteCond %{HTTP:Host} ^(?:www\.)?mydomain2\.com$
RewriteRule (.*) /mydomain2/$1 [NC,L,NS]
#www.mydomain3.com and mydomain3.com will map to the folder
{root}/mydomain3/
RewriteCond %{HTTP:Host} ^(?:www\.)?mydomain3\.com$
RewriteRule (.*) /mydomain3/$1 [NC,L,NS]
#subdomain.domain.com will map to the folder {root}/folder3/
RewriteCond %{HTTP:Host} ^(?:subdomain\.domain\.com)?$
RewriteRule (.*) /folder3/$1 [NC,L,NS]
在wordpress目录(mydomain1)中,我一直在尝试放置标准的Wordpress .htaccess文件。我希望这会从我的Wordpress提供的URL中删除index.php。当我把这个文件放到wordpress目录并设置Wordpress永久链接到/%postname%/我得到404错误,没有页面。我试图在这里使用的.htaccess文件是:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
我已经与我的托管服务提供商进行了交谈,他们支持mod_rewrite和subs,似乎无法提供帮助。我也进入了wordpress并将永久链接设置为/%postname%/ 所有这一切的结果是我不能再访问该网站了。任何人都可以帮助我 - 我正在阅读各种有用的提示和技巧,但似乎没有任何帮助或工作。
答案 0 :(得分:0)
尝试删除此行:
RewriteBase /
如果Wordpress位于子文件夹中(而不是虚拟主机根目录),请不要使用RewriteBase或将其设置为:
RewriteBase /wordpress-folder/