网站迁移上阿里405 method not allow

663次阅读

共计 762 个字符,预计需要花费 2 分钟才能阅读完成。

今天将之前虚拟机上跑的一个小博客迁移上了阿里云,由于忘记了之前的环境配置,导致了迁移过程中遇到了一系列问题

问题还原

迁移完成后,评论系统遇到了不能评论的问题

网站迁移上阿里405 method not allow

点击提交评论后:

网站迁移上阿里405 method not allow

评论提交失败,通过网页F12分析查看发现,有一个405错误

网站迁移上阿里405 method not allow

排错过程

1、首先检查了该文件的权限及目录等,均无问题

网站迁移上阿里405 method not allow

2、关闭ajax评论

网站迁移上阿里405 method not allow

重新提交评论后,页面直接跳转500错误

网站迁移上阿里405 method not allow

从这个大概可能,直觉告诉我,可能是PHP的问题了

3、打开WordPress调试模式,再次模式评论

WordPress根目录下的wp-config.php,将DEBUG项的false改为true

网站迁移上阿里405 method not allow

此时刷新留言板页面,会显示详细的调试信息

网站迁移上阿里405 method not allow

提交评论,如下图,看到这个已经确定问题找到了,就是/var/lib/php/session没有创建,导致不可写

网站迁移上阿里405 method not allow

知道问题了,解决就很简单了,创建该目录,然后给予权限即可

网站迁移上阿里405 method not allow

再次测试

网站迁移上阿里405 method not allow

session.save_handler = file 用于读取/回写session数据的方式,默认是files。它会让PHP的session管理函数使用指定的文本文件存储session数据。session.save_path = “/var/lib/php/session” 指定保存session文件的目录,可以指定到别的目录,但是指定目录必须要有httpd守护进程属主(比如apache或www等)写权限,否则无法回存session数据。当指定目录不存在时,php session环境初始化函数是不会帮你创建指定目录的,所以需要你手工建立指定目录。它还可以写成这样session.save_path = “N;/path” 其中N是整数。这样使得不是所有的session文件都保存在同一个目录中,而是分散在不同目录。这对于服务器处理大量session文件是很有帮助的。(注:目录需要自己手工创建)

正文完
 
mervinwang
版权声明:本站原创文章,由 mervinwang 2017-10-16发表,共计762字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
文章搜索