RewriteRule没有在博客子文件夹上执行此工作

B“ H

你好

下面在another post here上进行了讨论的以下代码在my websitesubdomain上非常有用:

RewriteEngine On
# Force www.
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE]
# Force https (SSL)
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,NE]

但是,在/blog子文件夹中,我有基于WordPress的blog,该子文件夹不起作用。我什么意思它不起作用?在我的博客上打开页面时,会打开一个安全页面(使用https),这很好。那里没有问题。

但是,如果我在网站或子域上手动输入了非安全链接(仅使用http,不带“ s”),则会自动将其重定向到安全链接(https,并带有“ s”),但是在博客上不会发生,即使使用了与主域和子域子文件夹相同的blog子文件夹的.htaccess也是如此。

blog的子文件夹的.htaccess文件的全文为:

# BEGIN WordPress
# The directives (lines) between `BEGIN WordPress` and `END WordPress` are
# dynamically generated,and should only be modified via WordPress filters.
# Any changes to the directives between these markers will be overwritten.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>

# END WordPress
RewriteEngine On
# Force www.
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,NE]
# Use PHP70 as default
AddHandler application/x-httpd-php70 .php
<IfModule mod_suphp.c>
    suPHP_ConfigPath /opt/php70/lib
</IfModule>

在旁注中,我不确定我是否需要第二个RewriteEngine On,或者甚至麻烦,所以我尝试了有无结果都相同。

请帮我解决这个问题。

真诚的,Dovid。

yaoyang111 回答:RewriteRule没有在博客子文件夹上执行此工作

B“ H

你好

Dusan Bajic在上面的评论中基本上回答了我的问题。

要点所有i,我想问:

如果我将代码放在最前面,这是否会阻止WordPress重写规则的执行?那也可能是不好的。那我该怎么办?

我考虑保持原样,只是在WordPress代码的末尾删除“ [L]”,这看起来是完美的解决方案,但是那行不通,因为该代码经常由WordPress重写

此致Dovid

本文链接:https://www.f2er.com/2886189.html

大家都在问