Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SSL正在WordPress中破坏我的htaccess文件_Wordpress_Apache_.htaccess_Google Compute Engine - Fatal编程技术网

SSL正在WordPress中破坏我的htaccess文件

SSL正在WordPress中破坏我的htaccess文件,wordpress,apache,.htaccess,google-compute-engine,Wordpress,Apache,.htaccess,Google Compute Engine,My.htacess文件不仅对重定向非常重要,而且对站点的外观也非常重要。我不知道为什么这个主题的开发者会这样做,但我不能改变这一点 如果您导航到,您将看到本应显示的站点。当您导航到时,您将看到没有样式的站点,任何导航都会导致404错误 这是我的.htaccess文件: # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] Rew

My.htacess文件不仅对重定向非常重要,而且对站点的外观也非常重要。我不知道为什么这个主题的开发者会这样做,但我不能改变这一点

如果您导航到,您将看到本应显示的站点。当您导航到时,您将看到没有样式的站点,任何导航都会导致404错误

这是我的.htaccess文件:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^other/(.*) /wp-includes/$1 [QSA,L]
RewriteRule ^file/(.*) /wp-content/uploads/$1 [QSA,L]
RewriteRule ^ext/(.*) /wp-content/plugins/$1 [QSA,L]
RewriteRule ^skin/main\.css //index.php?style_wrapper=1 [QSA,L]
RewriteRule ^skin/(.*) /wp-content/themes/richer-child/$1 [QSA,L]
RewriteRule ^richer/(.*) /wp-content/themes/richer/$1 [QSA,L]
RewriteRule ^skin_main/(.*) /wp-content/themes/richer/$1 [QSA,L]
RewriteRule ^ajax /wp-admin/admin-ajax.php [QSA,L]
RewriteRule ^wp-content/themes/richer-child/screenshot\.png|readme \.html|license\.txt|wp-content/debug\.log|wp-includes/$ /nothing_404_404 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
#开始WordPress
重新启动发动机
重写基/
重写规则^index\.php$-[L]
重写规则^other/(.*)/wp包括/$1[QSA,L]
重写规则^file/(.*)/wp content/uploads/$1[QSA,L]
重写规则^ext/(.*)/wp content/plugins/$1[QSA,L]
重写规则^skin/main\.css//index.php?style_wrapper=1[QSA,L]
重写规则^skin/(.*)/wp content/themes/richer child/$1[QSA,L]
重写规则^richer/(.*)/wp内容/主题/richer/$1[QSA,L]
重写规则^skin_main/(.*)/wp content/themes/richer/$1[QSA,L]
重写规则^ajax/wp admin/admin-ajax.php[QSA,L]
重写规则^wp content/themes/richer child/screenshot\.png | readme\.html | license\.txt | wp content/debug\.log | wp includes/$/nothing_404_404[QSA,L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/index.php[L]
#结束WordPress
你知道要改变什么来解决这个问题吗?该网站被托管在谷歌云计算引擎上。提前谢谢你的帮助

这是我的VHost配置(至少是与本主题相关的部分)

服务器管理员webmaster@localhost
ServerName akcrossfit.com:443
DocumentRoot/var/www
选项如下符号链接
允许超越所有
选项索引跟随符号链接多视图
不允许超限
命令允许,拒绝
通融
ScriptAlias/cgi-bin//usr/lib/cgi-bin/
不允许超限
选项+执行CGI-多视图+符号链接所有者匹配
命令允许,拒绝
通融

当我尝试通过https访问站点时,它会将我重定向到非https URL,但我怀疑问题在于
设置>>常规中的WordPress地址和站点URL

查看站点时,对CSS和Javascript文件的引用将通过http链接,这将阻止某些浏览器加载不安全的内容

如果您希望站点安全,请将WordPress地址更改为https URL,以便资源和链接使用SSL

编辑:在能够通过https查看站点之后,看起来您的所有资源(js、图像、javascript)都以404错误的形式返回。甚至看起来.htaccess重写规则对帖子和页面都不起作用。这很可能是由于SSL站点的VHost配置错误造成的。Apache错误日志可能会有所帮助,但我会先看看SSL vhost,看看它与主站点有什么不同


编辑2:现在的问题是,在您的
部分中有
AllowOverride None
,它有效地禁用了.htaccess重写规则的应用。

您在访问日志中看到了什么?很抱歉。。。我有一个正在重定向的插件。网站上只有几个页面需要安全保护,所以我对保护整个网站不感兴趣。我以前做过,但没有在谷歌云上做过。@DarrenJackson我更新了答案,看起来所有的站点资源在ssl主机上都有404个错误。谢谢你的帮助。今天我将对此进行研究,然后再与您联系。我现在看到了网站的首页,它看起来就像它应该的样子(),因为主题不再需要htaccess来指向css文件。我确信SSL正在工作,否则我会在头版上看到404错误。但出于某种奇怪的原因,https没有看到htaccess文件,因为当您尝试导航时,所有内部页面上都会出现404个错误。看起来资源现在加载正常,但ssl vhost没有处理.htaccess文件。是否在vhost上设置了
AllowOverride None
,或者是否指定了必要的
AllowOverride All
?如果未设置或未设置,则apache将忽略重写规则和其他指令。