Articles of PHP

我怎样才能让我的mediawiki停止思考我的cookies被禁用?

我已经search了半天,如何解决这个问题,并不能弄清楚。 根据Mediawiki网站上的说明,我在维基上创build了一个简单的私人维基后不久,就开始给我这个奇怪的login错误信息: 维基使用cookieslogin用户。 你有cookies被禁用。 请启用它们,然后重试。 如果我删除了这些私人维基设置,即使我尝试login,错误也会消失。但是,我只需要它成为我的团队的私人维基。 那我该怎么办? 这是迄今为止我所做的。 为了安全起见,在改变之后,我试着重新启动Apache: sudo /etc/init.d/apache2 restart 在我的php.ini文件中,我有以下设置: session.save_path =“/ var / lib / php5” session.cookie_secure =安全 session.cookie_path = / tmp session.cookie_domain =我的服务器的内部URL(我应该甚至设置这个?这个字段是空的,但没有注释掉) session.referer_check =关 我运行以下以确保文件夹是可写的: sudo chmod -R 1777 / var / lib / php5 sudo chmod -R 1777 / tmp 在我的LocalSettings.php文件中,我将以下内容添加到设置文件的底部: session_save_path( “TMP”); $ wgSessionsInObjectCache = true; $ […]

在debian上运行一个特定的(较旧的)php版本的nginx,php-fpm

为了迁移旧的PHP软件,我想运行PHP 5.3。*所以我: 通过apt-get purge php*删除了apt-get purge php* 添加相应的http://snapshot.debian.org/archive/debian/到源 安装apt-get install php5=5.3.10-2 现在,如果我做apt-cache policy php5我得到: php5: Installed: 5.3.10-2 Candidate: 5.6.17+dfsg-0+deb8u1 Version table: 5.6.17+dfsg-0+deb8u1 0 500 http://ftp.debian.org/debian/ jessie/main amd64 Packages 5.6.14+dfsg-0+deb8u1 0 500 http://security.debian.org/ jessie/updates/main amd64 Packages *** 5.3.10-2 0 500 http://snapshot.debian.org/archive/debian/20120221T041601Z/ unstable/main amd64 Packages 100 /var/lib/dpkg/status 到目前为止,我的nginx设置如下所示: location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php5-fpm.sock; […]

nginxconfiguration与PHP和别名更新后损坏

我已经通过nginx别名+ php支持configuration了对本地目录的访问: https://mydomain.de/wbg /var/www/wallabag指向/var/www/wallabag 。 一切工作正常,直到我做了一个正常的apt-get update && apt-get升级在服务器上(运行在Debian 8上)。 现在当我打开网站,我只得到“没有指定input文件”。 这是nginx所说的: 2016/02/20 13:07:14 [error] 4376#0: *1 FastCGI sent in stderr: "Unable to open primary script: /var/www/wallabag/index.php/wbg/index.php (No such file or directory)" while reading response header from upstream, client: 78.50.228.24, server: mydomain.de, request: "GET /wbg/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "mydomain.de" 这是我的configuration的重要部分: server { server_name mydomain.de; […]

使用PHP-PDO的SSL属性连接到MySQL有什么好处?

我主要开发使用MySQL作为我的数据库的PHP应用程序。 通常,运行应用程序的服务器与MySQL服务器位于同一个框中,但并不总是如此。 我正在阅读有关SSL支持的PHP文档http://php.net/manual/en/ref.pdo-mysql.php,并留下了这些问题: 当应用程序和数据库服务器在同一个(本地主机)环境中时,是否需要使用SSL连接到MySQL? 当您访问两台服务器(应用程序服务器和数据库服务器)之间的信息时,这样做的好处是什么? 什么是使用PDO-SSL连接的“最佳实践”? 假设为客户端/服务器连接使用SSL证书与PDO的SSL连接无关吗?

PHP会话目录已满?

我希望有人能给我一些build议,请。 我正在运行一个CentOS 6服务器,在过去的几天里我的磁盘使用率从60GB变成了135GB(98%)。 我相信这个问题可能与PHP会话目录(/ var / lib / php / session)有关,因为这似乎是巨大的(我不能用ls或rm),那么在这个目录中必须有数百万个文件。 我怎样才能删除这个目录? RM不在这里工作,我也试过rsyncreplace一个空目录,但这也需要永恒。 如果这是造成这个问题 – 为什么PHP不会自动删除这些文件? 有可能有任何logging可能指向我的方向利用,DDOS或失败? 谢谢

使用uhttpd为GET / generate_204返回HTTP状态204?

为了处理我的特定设置的Android强制门户检测,每当我得到/generate_204的GET请求时,我需要返回一个HTTP状态码204。 我目前使用uhttpd作为我的networking服务器,所以我想知道这是否可以做这台服务器。 我目前的理解:我需要自己写一个CGI(或PHP或Lua)脚本,返回类似 Status: 204 No Result 我的问题是我如何configurationuhttpd将请求转发到/generate_204到CGI或PHP或Lua,因为没有前缀和文件扩展名,我可以为此匹配。

在Ubuntu上增加Nginx和PHP-FPM允许的最大打开文件数

我需要在Ubuntu 16.04上为Nginx 1.10和PHP-FPM 7增加允许打开的最大文件数量。 根据一些教程,我改变了/etc/security/limits.conf中每个用户打开文件的最大数量 * soft nofile 64000 * hard nofile 68000 我还在/etc/sysctl.conf中更改了整个系统的最大打开文件数 fs.file-max = 200500 重新加载我的虚拟机后,我检查了用户login到系统的软硬限制 igor@ubuntu:~$ ulimit -Sn 64000 igor@ubuntu:~$ ulimit -Hn 68000 如您所见,限制适用于用户。 我的问题是,我不能改变Nginx和PHP的限制 igor@ubuntu:~$ sudo ps aux|grep nginx root 1124 0.0 0.0 45988 980 ? Ss 01:04 0:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; www-data 1125 0.0 […]

PHP不需要遍历AWS EC2实例上的目录

这工作没有问题,但在EC2上运行系统更新后,我注意到我得到以下错误,无论我做什么,我无法解决这个问题。 它似乎没有向上移动一个目录,并试图访问“../../”作为文件path的一部分,而不是遍历两个目录。 我想要在这里生活的文件 /var/www/html/site/app/data/myFile.php 我的索引文件居住在这里:/var/www/html/site/public/rest/index.php require __DIR__ . '/../../app/data/myFile.php'; 错误 Fatal error: require(): Failed opening required '/var/www/html/site/public/rest/../../app/data/myFile.php' (include_path='.:/usr/share/pear:/usr/share/php')

无法使用PHP和PDO从另一个CentOS7访问CentOS 7 Postgresql Server

开始 服务器1是我的CentOS 7生产服务器。 它包含Apache,ssh和Postgresql数据库。 服务器2是我的CentOS 7testing服务器。 它包含Apache,ssh和一个testing数据库。 两台服务器都设置为firewalld以接受22,80和443.两台服务器都有以下设置。 sudo setsebool httpd_can_network_connect_db 1 … 我怎么知道这些端口是开放的? 我可以在(22号港口)ssh。 我可以通过http和https(端口80和443)看到“testing1,2,3 …”testing页面。 我可以通过使用SQL Maestro,DBeaver,DBSchema等(端口5432)访问Postgresql。 … 问题 我可以从任何地方使用DbSchema,HeidiSQL,Postgresql SQL Maestro等远程访问服务器1上的 Postgresql。 但是,我无法使用PHP和PDO从服务器2进行连接。 它总是导致[08006]超时 。 我尝试了以下,但没有帮助; sudo setsebool httpd_can_network_connect 1 … 问题 如何使用PHP从服务器2访问服务器1上的Postgresql数据库? 我是CentOS7的新手。 在使用其他Linux发行版之前,我已经完成了这个任务。 我错过了什么SELinux /其他设置? … 解决scheme(下) 见亚历山大的回答如下。 我以为5432是在firewall-cmd中启用的。 当我发出以下命令 sudo firewall-cmd –zone=public –list-services 只有dhcpv6-client http ssh https被列出! 我的postgresql发生了什么事? 我只是发表了以下内容,使这项服务永久; […]

nginx php-fpm子代码退出

任何人有与11.0-RELEASE-P8的PHP-FPM 7类似的问题,或知道如何debugging? 情况在几分钟后开始,只向客户显示半页。 任何页面显示大约〜62kb的内容结尾 4. php-fpm的日志文件: [18-Mar-2017 15:41:49] NOTICE: [pool www] child 80582 exited with code 0 after 0.005648 seconds from start [18-Mar-2017 15:41:49] NOTICE: [pool www] child 80584 started [18-Mar-2017 15:41:49] NOTICE: [pool www] child 80583 exited with code 0 after 0.005877 seconds from start [18-Mar-2017 15:41:49] NOTICE: [pool www] child 80585 started [18-Mar-2017 […]