我有一个wordpress托管网站www.mysite.com/myBlog。 wordpress安装在我的主机文件夹内的public_html / www / myBlog文件夹中完成。
我还有一个文件夹public_html / www / myName,它将我重定向到域myName.com
虽然这很好但是在myName文件夹中我有像index.html这样的文件。 acad.html,worexp.html
点击它们我希望有类似
的行为myName.com/index.html myName.com/acad.html myName.com/workex.html
虽然我只把它作为myname.com。
我在myName文件夹中找到了htaccess规则:
Redirect http://mydomainName.com/myName/+
# 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
RewriteCond %{HTTP_HOST} ^mydomainName.com$
RewriteRule ^/?$ "http\:\/\/www\.mydomainName\.com\/myBlog" [R=301,L]
任何人都可以帮我解决htaccess文件的错误吗?
更多详情:
我的WordPress博客搞砸了。我可以去我的博客和主页工作正常,但当我尝试去任何帖子它会抛出403错误。 Apache被禁止。
.htaccess中的当前重定向规则代码是:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wpblog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wpblog/index.php [L]
</IfModule>
# END WordPress
答案 0 :(得分:0)
这可能是服务器配置中禁用 FollowSymLinks 的结果。只需将Options +FollowSymlinks
添加到 .htaccess 文件即可。
答案 1 :(得分:0)
而不是使用标志[L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wpblog/
RewriteRule ^index\.php$ - [L] <---
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wpblog/index.php [L] <---
</IfModule>
# END WordPress
尝试使用[QSA]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wpblog/
RewriteRule ^index\.php$ - [QSA] <---
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wpblog/index.php [QSA] <---
</IfModule>
# END WordPress
如果RewriteRule匹配
,[L]如何工作RewriteRule . /wpblog/index.php [L]
然后,如Apache网站上所述,忽略此RewriteRule之后的所有其他重写
“在大多数情况下,这意味着如果规则匹配,则不会处理其他规则。” http://httpd.apache.org/docs/current/rewrite/flags.html
这是一个链接,其中包含有关.htaccess标志的更多信息
http://httpd.apache.org/docs/current/rewrite/flags.html
希望这适合你:P