当您 ./configure PHP 时,究竟什么是 --enable-zend-multibyte 选项?
是否可以在不重新编译php的情况下安装pcntl模块?我正在尝试在 CentOS 上进行设置。
我在 Ubuntu Hardy 上安装了 nginx 并立即意识到 PHP 脚本正在获取空的请求数组,即无论 GET 还是 POST 都没有通过,甚至 $_REQUEST 数组也是空的。
当我切换回 Apache 时一切正常。
安装nginx版本为0.6.35-0ubuntu1.1~hardy1,PHP为PHP Version 5.2.4-2ubuntu5.10。
可能有什么问题?
我刚刚从 Debian Lenny 升级到 Squeeze 并注意到我的 /var/log/apache2/errors.log 受到以下错误的轰炸:
<b>Warning</b>: Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and greater in <b>Unknown</b> on line <b>0</b><br />
<br />
<b>Warning</b>: Directive 'register_globals' is deprecated in PHP 5.3 and greater in <b>Unknown</b> on line <b>0</b><br />
Run Code Online (Sandbox Code Playgroud)
我觉得这很奇怪,因为这是一个系统日志,而 php(通过 apache)试图将 html 代码写入其中。这似乎发生在服务器(包括任何虚拟主机)上的每个页面加载上。
将这些值设置为 off 目前不是一个选项(我正在运行一个未维护的代码库)。我的 php.ini 包含以下内容:
error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED
display_errors = On
register_globals = On
magic_quotes_gpc = On
Run Code Online (Sandbox Code Playgroud)
我不确定这是 php 配置还是 apache 配置的错误。有谁知道我如何避免在每个页面加载时将这些消息写入 errors.log ?
如何测试我的服务器的安全性?
请我知道这是太笼统的问题。但我想知道是否有测试软件或网络服务检查您服务器的所有端口,或者可能存在安全漏洞?
我通常会检查 unix 权限,仅此而已,但是我可以做些什么?
附:用户无法使用我的 Web 应用程序上传文件,所以我没有这个问题。
我正在尝试使用框架 DooPHP 清理 NGINX 中的 url。
这个 => - http://example.com/index.php/something/more/ 到这个 => - http://example.com/something/more/
如果有人尝试以第一种形式输入,我想从 url 中删除(清理 url)“index.php”。就像一个永久的重定向。
如何在 NGINX 上做这个配置?
谢谢。
[更新:实际的 nginx 配置]
server {
listen 80;
server_name vip.example.com;
rewrite ^/(.*) https://vip.example.com/$1 permanent;
}
server {
listen 443;
server_name vip.example.com;
error_page 404 /vip.example.com/404.html;
error_page 403 /vip.example.com/403.html;
error_page 401 /vip.example.com/401.html;
location /vip.example.com {
root /sites/errors;
}
ssl on;
ssl_certificate /etc/nginx/config/server.csr;
ssl_certificate_key /etc/nginx/config/server.sky;
if (!-e $request_filename){
rewrite /.* /index.php;
}
location / {
auth_basic "example Team Access";
auth_basic_user_file config/htpasswd;
root …Run Code Online (Sandbox Code Playgroud) 我有一个 PHP 脚本设置,每当在站点上执行操作时都会发出 cURL 请求。问题是每当操作运行时,信息都会被发布两次。
我需要弄清楚这是否是我的问题(cURL 运行了两次)或者它 POST 到的 URL 是否正在执行两次操作。
我想最好的方法是查看来自服务器的传出 http POST 请求。
这是最好的选择吗?如果是这样,我该怎么做?
我正在编译 php,并将我的模块目录设置为 /usr/lib64/20090626-zts
我想将其更改为 /usr/lib64/php/modules,但我找不到这样做的配置选项。
我可以在我的 php.ini 中更改它并移动目录,但是当我运行 phpize 并创建一个新模块时,它仍然将它放在 /usr/lib64/20090626-zts
正如我的问题标题所说,我想知道这是否是一个好习惯,
我知道我可以将它安装在 EC2 实例中,但我想知道,随着我将添加更多实例来扩展我的应用程序,这是否会导致一些问题;你有这方面的经验吗?
我使用 S3 允许通过 PHP 脚本上传文件,所以基本上问题是:
使用安装是一个好习惯还是有更好的方法来处理用户文件上传?
提前致谢
我不得不在我的服务器上进行 Debian dist-upgrade……在此过程中,PHP 升级到 5.4。我们使用的 ioncube 最多只支持 5.3 atm,我在寻找如何从 5.4 降级到 5.3 时遇到了一些麻烦。有谁知道怎么做?