我们刚刚有一个(相当重要的)WordPress 数据库莫名其妙地丢失了。幸运的是,我们每晚都会进行备份,所以这不会是世界末日,但我想避免或至少能够在将来追踪这种情况。
现在,我们仍然不知道数据库被删除是否是由于初级开发人员不小心在错误的 mysql 命令行或 phpymadmin 窗口中输入命令,或者这是否是恶意 SQL 注入攻击。
显然,我们需要对初级开发人员 mysql 用户帐户进行更严格的控制,但除此之外,我想知道通过服务器管理检测/防止 sql 注入的最佳实践是什么。
请注意,我不想知道如何对个人输入进行清理——我每次都会这样做,但我们编写了很多自定义脚本,而且我们的员工中总是会有初级开发人员,他们可能会忘记或犯错误。至少,我想知道最好的(最简单的)方法:
以标准访问日志格式记录所有GET或POST请求,其中包含查询字符串或发布带有任何 SQL 的数据(我想象使用正则表达式,就像/(drop|delete|truncate|update|insert)/所有虚拟主机的单个文件一样,然后我可以 grep
drop仅将以, delete,开头的 mysql 命令记录truncate到单个文件中。每个条目都需要包含最短的时间和 mysql 用户,但是如果我可以看到它是通过命令行还是 php 以及 php 脚本是什么,那就太好了。
感谢您的帮助!显然,请让我知道是否有任何使用我忽略的标准日志的基本解决方案。
我有一个 512mb 的单核服务器实例。截至目前,我有大约 3 个网站,大约有 10k 篇文章,在所有网站上我都启用了 wp 超级缓存。典型的缓存时间为 3600 秒或 7200 秒。而且 vps 实例保持得很好。它每天只会出现一次约 60% 的 cpu 峰值。
我读到,一旦一个网站达到 30k 篇文章,由于文件数量(Linux 文件系统)或类似的原因,依赖 wp 超级缓存并不是一个好的做法。
所以我想也许我应该改用 nginx fastcgi 缓存。在他们的网站中,与 wp super cache 或 w3 Total Cache 相比,他们推荐将此作为最佳实践。
考虑到内存的数量,我有可用的。你们认为 fastcgi 缓存会是我网站的更好替代方案吗?
内存缓存呢?
我的 php 7.1 启用了 opcache。
WordPress 网站(4 年前)最近从共享服务器迁移到 AWS 服务器(2cpu、4GB 内存、80 SSD)。迁移后网站工作正常,但在凌晨 2 点到 6 点之间的夜间 CPU 使用率出现峰值(仅在周六或周日)这会导致 CPU 内存不足并关闭整个服务器以及邮件服务器。重新启动服务器后,网站运行正常,CPU 使用率也没有出现峰值(10% - 15%)。所附日志的屏幕截图https://prnt.sc/LTyOU9YrEHd6。网站宕机前的错误日志 服务器重启后的使用情况
是什么原因导致CPU使用率出现问题?是因为spamd使用还是SQL使用?
哪个 Web 服务器更适合运行一些 wordpress 实例?
它们都很容易设置,所以我主要想知道性能。会有区别吗?我认为 nginx 在提供静态文件方面速度更快。
我在 Bluehost 共享托管环境中托管了许多 wordpress 站点。最近,当我在 Google 中搜索其中一个网站时,它说“该网站可能已被入侵”。
我收到了来自 Google 网站管理员的关于其中一个 WP 站点中的脚本的警报。当我检查这些站点时,我在页脚中发现了一些链接,提到"myteenmovies.net"了另一个站点。Whois 信息显示,它们是俄罗斯网站。
我还发现了其他一些名字很奇怪的 PHP 文件wxwz.php,xypz.php等等...... PHP 代码是用eval(gununcompress(base64_decode()))类似的方式加密的。还有一个文件有一个注释“#Web Shell by orb”。
我知道黑客可以完全访问我的服务器(使用 Webshell 脚本)。所有的网站都很老(大约一年),Wordpress 2.5。权限是755。谁能猜猜或建议,黑客是如何上传文件的?FTP/SSH/Cpanel 密码非常强大。还有其他方法吗?
我有一些关于为资金有限的小型初创公司部署 Web 应用程序(和托管 wordpress 博客)的“最佳”方式的一般性问题。
现在我们有一个带有 Tomcat/Apache/MySQL/PHP 的简单 Ubuntu 服务器(旧的 Pentium 4 机器)。Tomcat 用于部署我们的 Grails 应用程序。Apache/PHP/MySQL 被用于托管 Wordpress 博客。服务器在家庭线上……使用动态 DNS 服务更新不断变化的 IP。显然,这不是一个好的永久解决方案。
如果我们要采取下一步行动,您会推荐什么?亚马逊EC2?购买新服务器和专用业务线?其他选择?留在我们所拥有的?显然,做出正确决定需要考虑很多因素……寻找一些大致的答案来帮助我判断我是否走上了正确的道路。
提前致谢!
我需要创建一个新的 MySQL 用户来管理我的 wordpress 站点。wordpress 需要哪些特权?
我认为 INSERT 也需要,也许是 DROP?
例子
GRANT SELECT ON database.* TO user@'localhost';
Run Code Online (Sandbox Code Playgroud) 服务器设置:Ubuntu 12.10、Varnish 3.0.2、Nginx 1.3.14,安装 WordPress 3.5.1。
我们正在使用“随机重定向”插件,该插件在 URL http://example.com/?random 上显示随机博客文章
我想将 Varnish 设置为不缓存上述 URL,因为目前“随机”帖子一直显示相同的帖子。
显示在 default.vcl 中放置内容的特定片段将非常有帮助。谢谢。
我有一个在共享主机上运行的基于 WordPress 的网站。它的响应时间非常好(检索 HTML 页面大约 2 秒,加载所有资源大约 5 秒)。
我计划将它移动到一个专用的虚拟服务器(Ubuntu 12.04 LTS),理论上应该会改进一些东西并使它们更加一致,因为它没有共享。但是我观察到严重的性能下降,页面需要 10 秒才能生成。
我通过/etc/hosts在服务器上进行编辑并将域映射到127.0.0.1. 我使用Apache负载测试器ab来获取HTML,所以JS,CSS和图像都被排除在外。还是花了10秒。
我在也使用 MySQL 的服务器上安装了 Zpanel,它的页面显示速度非常快(1.5 秒),还有 phpMyAdmin。直接通过 phpMyAdmin 对 wordpress 数据库执行一些查询也会很快返回它们,查询时间在 10 到 30 毫秒范围内。
内存也足够了,可用的 1Gb 物理内存中仅使用了 800Mb,因此它似乎也不是交换问题。我也安装了APC来尝试提高PHP性能,但没有任何效果。
我还应该寻找什么?什么可能导致这种性能下降?由于我在基于云的虚拟服务器上运行,这可能是某种 I/O 问题吗?
我希望能够向我的提供者提出这个问题,但没有显示来自某些诊断的实际数据,我担心他只会责怪我的申请。
UPDATE与sar当我没有HTTP请求输出(每秒):
02:31:29 CPU %user %nice %system %iowait %steal %idle
02:31:30 all 0.00 0.00 0.00 0.00 0.00 100.00
02:31:31 all 2.22 0.00 2.22 0.00 0.00 95.56
02:31:32 all 41.67 0.00 6.25 0.00 2.08 50.00 …Run Code Online (Sandbox Code Playgroud) 我使用 PHP 和 WordPress 运行 Nginx。Acunetix 建议设置这些标志,但它们不提供任何文档。我环顾四周,但我还没有看到任何能确切说明如何实现这一点的东西。我有这个模块:http : //wiki.nginx.org/HttpHeadersMoreModule on Nginx 如果有帮助的话。有关如何设置这些标志的任何信息?谢谢。
根据此处的要求,cookie 示例
饼干:__cfduid=d3-shortened-08;cf_use_ob=0; wordpress_logged_in_6dfda-shortened-e3e82d5; __utma=21-shortened-436.19; __utmc=21519150;__utmz=2119150.1396063475.3.2.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmct??r=(not%20provided); 测试=1;sid=a14-shortened-384; 会话测试=1;wp-settings-2=editor%3Dhtml%26wplink%3D0%26uploader%3D1%26mfold%3Do%26ed_size%3D??677%26libraryContent%3Dbrowse%26urlbutton%3Dfile; wp-settings-time-2=139745167; wordpress_test_cookie=WP+Cookie+检查;wordpress_logged_in_a9-shortened-d2a7=DrDinosaur%7C1397980-shortened-2f9