标签: php

我的服务器正在交换,我该如何解决?

我正在为我的网站使用 slicehost.com 256MB 托管。

不幸的是,它几乎一直在交换。当我在控制台中输入时,free我得到如下信息:

            total       used       free     shared    buffers     cached
Mem:        251140     228968      22172          0        596      17356
-/+ buffers/cache:     211016      40124
Swap:       524284      60944     463340
Run Code Online (Sandbox Code Playgroud)

如果我reboot是服务器,交换会停止一点,然后重新开始。

我怎样才能:

1)找出哪些进程/功能导致交换

2)如何解决问题

3) 弄清楚 256MB 是否太小,是升级而不是优化的时间

谢谢

// 使用 CakePHP/apache

linux php swapping apache-2.2

1
推荐指数
1
解决办法
7664
查看次数

PHP动态添加虚拟主机

我正在开发一个 PHP Web 应用程序,除其他外,它需要允许用户添加、编辑和删除 Apache 虚拟主机条目。(我在我的 Apache2.conf 中包含了一个 web 可写的配置文件)。让 Apache 重新启动或识别 vhost 文件中的这些更改的最佳方法是什么?我看到的唯一方法是以某种方式将 PHP 升级到 root 权限并在文件更新时调用“apachectl graceful”,有没有更好的方法?我希望更改立即生效,而不是等待 crontab 执行....

php php5 virtualhost apache-2.2

1
推荐指数
1
解决办法
2426
查看次数

如何防止apache2接受没有文件扩展名的url?

我注意到 apache2 会加载一个页面,比如说 info.php,即使指定的 url 没有像 mysite.com/info 这样的文件扩展名

我认为您需要执行某种形式的 mod_rewrite 才能获得该功能,但显然这是我系统中的默认功能。

有什么方法可以防止这种默认行为,以便只能指定具有文件扩展名的页面?

我已经重写了禁用的仅供参考。

php apache-2.2

1
推荐指数
1
解决办法
1814
查看次数

通过网络服务器或 PHP 发送 HTTP 标头?

同样可以通过网络服务器或脚本发送 HTTP 标头。我在 Nginx 上使用 PHP。通过 nginx 或 PHP 发送 HTTP 标头(例如 Cache-Control)有什么不同吗?

通过网络服务器发送标头是否更快?它对早期处理 HTTP 请求有影响吗?

php http nginx cache http-headers

1
推荐指数
1
解决办法
888
查看次数

如何在 Debian 上找到已安装的 php 扩展?

是否可以在 Debian 上获取已安装的 php 扩展列表?有没有什么简单的方法可以找到 debian php 包中存在哪些扩展以及哪些必须手动编译(实际上三个列表会很有用:所有已启用的扩展、所有已安装的扩展、启用和未启用、所有扩展可作为 deb 包用于给定的 debian 版本)?

php debian

1
推荐指数
1
解决办法
9328
查看次数

为 Web 应用程序备份生产环境的最佳做法是什么?

我在 hetzner 上运行 2 个盒子,想找出备份 - 应用程序 - 数据 - 实时环境的最佳方法

我知道对于应用程序和数据部分,它非常特定于我的 Web 服务,因此我不会在这里详细介绍。但真的很感谢假设像 Ubuntu 上的 LAMP 这样的基础知识的一般答案。

我目前正在做以下事情 -

  1. Hetzner 提供备份
  2. 每日 SQL 转储到远程驱动器(并复制到至少 2 个不同的位置)

我还应该考虑什么?

谢谢你。

mysql ubuntu backup cloud php

1
推荐指数
1
解决办法
1369
查看次数

在不同的时间生成自动化的 cron 作业

问候我是 cron 的新手。是否可以每小时随机运行一次自动 cron 作业?

语法应该每天都不同,例如:

34,57,44,30,37,31,38,30,44,35,36,56,46,55,54,40,45,44,42,35,50,59,48,34,52,* * * * *
Run Code Online (Sandbox Code Playgroud)

据我所知,上面的代码将在 0:34、01:57、02:44.... 到 23:52 发送 cron 作业。我目前正在用 PHP 生成语法,但我不确定如何将它发送到 cron 命令或者它是否安全。请告知如何实现这一点。

linux php cron

1
推荐指数
1
解决办法
1118
查看次数

创建测试站点

我有一个网站正在运行。当我们雇用某人时,我想为新员工创建一个测试站点(实时站点的副本)以进行修补。我需要获取文件和数据库的新副本(基本上是快照)并允许他们访问这些复制的文件和数据库,以便他们可以编辑和上传它们以查看他们所做的更改,就好像它是实时站点一样

基本上,创建网站副本进行测试的最佳实践是什么?

服务器正在运行 Linux、PHP、mySQL

mysql linux php

1
推荐指数
1
解决办法
81
查看次数

pecl_http 扩展未加载

出于某种原因,pecl_http 扩展没有出现在我的 test.php 文件中,其中包含:

<?php phpinfo(); ?>
Run Code Online (Sandbox Code Playgroud)

我刚刚安装了 pecl_http 使用:

pecl 安装 pecl_http

安装成功,我通过运行验证了它:

目录

Installed packages, channel pecl.php.net:
=========================================
Package   Version State
mongo     1.2.10  stable
pecl_http 1.7.4   stable
Run Code Online (Sandbox Code Playgroud)

然后我使用以下命令找到了我的 php.ini 文件:

php -i | grep '配置文件'

Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini
Run Code Online (Sandbox Code Playgroud)

我在 vim 中编辑它并添加:

扩展名=http.so

最后我重新启动了 Nginx 和 PHP-FastCGI:

/etc/init.d/nginx restart
/etc/init.d/php-fastcgi stop
/etc/init.d/php-fastcgi start
Run Code Online (Sandbox Code Playgroud)

我的 PHP extension_dir 是:

/usr/lib/php5/20090626

我确认“http.so”位于该目录中。

任何想法为什么它没有加载?

我的机器在 Linode 上运行 Ubuntu 10.04 LTS 64 位配置文件。我安装的唯一其他扩展是 New Relic 和 …

php nginx pecl linode

1
推荐指数
1
解决办法
9107
查看次数

在使用 sudo 调用的脚本中调用 sudo 会提示输入密码,即使使用 NOPASSWD

我正在使用的 PHP 程序 ( LConf ) 使用sudo.

我已允许用户apache运行脚本并使用sudo -u apache /usr/local/LConf/lconf_deploy.sh.

我在lconf_deploy.sh拨打时被提示输入密码/usr/bin/sudo -u icinga /usr/local/LConf/LConfExport.pl -o /etc/icinga/lconf -v,但在此线路之前或之后拨打线路没有问题。

在阅读了很多(在 stackexchange 和互联网上的其他地方)关于在这种情况下该怎么做之后,我已经禁用requiretty并使用NOPASSWD了所有我能想到的会影响这种情况的东西。

# cat /etc/sudoers | grep -v "#"
Defaults    always_set_home
Defaults    env_reset
Defaults    env_keep =  "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
Defaults    env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults    env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults    env_keep += "LC_MONETARY LC_NAME LC_NUMERIC …
Run Code Online (Sandbox Code Playgroud)

php bash httpd sudo perl

1
推荐指数
1
解决办法
805
查看次数

标签 统计

php ×10

apache-2.2 ×3

linux ×3

mysql ×2

nginx ×2

backup ×1

bash ×1

cache ×1

cloud ×1

cron ×1

debian ×1

http ×1

http-headers ×1

httpd ×1

linode ×1

pecl ×1

perl ×1

php5 ×1

sudo ×1

swapping ×1

ubuntu ×1

virtualhost ×1