heroku中托管的Wordpress页面返回404

时间:2013-07-17 04:48:26

标签: php wordpress heroku http-status-code-404

我在heroku中托管了我的wordpress博客,一切正常但间歇性地在访问wordpress页面时遇到404错误,例如在大多数情况下返回404(在此服务器上找不到请求的URL / about /)

  

http://pacific-wildwood-3863.herokuapp.com/about/

当我看到heroku日志时,它有以下

  

Jul 16 21:40:06 pacific-wildwood-3863 app / web.1:[Wed Jul 17 04:40:05   2013] [错误] [客户端10.62.147.42]文件不存在:   / app / www / about,referer:http://pacific-wildwood-3863.herokuapp.com/   7月16日21:40:06太平洋-wildwood-3863 app / web.1:10.62.147.42 - -   [17 / Jul / 2013:04:40:05 +0000]“GET / about / HTTP / 1.1”404 204 Jul 16   21:40:08 pacific-wildwood-3863 heroku / router:at = info method = GET   path = / about / host = pacific-wildwood-3863.herokuapp.com   fwd =“182.72.242.3”dyno = web.1 connect = 5ms service = 3ms status = 404   字节= 204

不确定为什么它会查找目录而不是由wordpress处理。是否有任何wordpress路径配置缺失或我需要增加web dynos,目前我只有1?请注意,它有时会起作用吗?

3 个答案:

答案 0 :(得分:2)

我也有这个问题,非常痛苦。更改固定链接可以工作一段时间,但是一旦Heroku重新启动dynos,您的链接就会再次被破坏。我做了以下事情来解决它:

1)将.htaccess文件更改为:

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /
 RewriteRule ^index\.php$ - [L]
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule . /index.php [L]
</IfModule>

2)确保保存编码为ANSI的.htaccess文件(在Mac上从TextEdit保存时查找“Western”+“Windows”)。

3)提交更改并推送到Heroku。

4)您可以通过运行heroku restart来检查它是否有效。

希望有所帮助!

答案 1 :(得分:0)

通过this forum,当我检查另一个永久链接选项时,它出人意料地工作了。 当我换回来时它也起作用,不知道出了什么问题。

答案 2 :(得分:0)

请检查您是否在git ignore中阻止了htaccess文件。如果你是,请注释掉忽略然后提交并推送htaccess文件。这应该可以解决你的问题。

我使用了基石并且遇到了同样的问题,因为它忽略了htaccess作为默认值。

希望能为你修复它!