Articles of PHP

PHP文件下载页面加载而不是执行 – NGINX

我已经在根目录中build立了一个与我们的实际域一起的子域。 在根目录下的两个文件夹如下所示: domain.com sub.domain.com 当去到域名(已经存在)事情工作正常。 当去sub.domain.com(这是一个WordPress的安装) index.php文件只是下载和页面不加载或执行。 在我的etc/nginx/sites-available/sub.domain.com.conf我有: server { listen 80; root /var/www/sub.domain.com; index index.php index.html index.htm; server_name sub.domain.com; location / { try_files $uri $uri/ =404; } } 我记得重新启动nginx服务器,但是,我们使用php-fpm,所以我不确定这是否可能是相关的。 它必须与PHP相关,因为当replace基本index.html文件的wordpress安装时,页面按预期加载。 有谁知道什么可能会导致这种行为?

WordPress 504 Gateway在安装和添加用户时超时

我的WordPress安装有问题。 我正在VPS服务器上运行它。 我安装了我自己的LEMP堆栈。 当运行WordPress安装时,在最后一步之后,加载最后需要一些时间,最后出现504 Gateway Time-out错误。 但该网站已安装,我可以login到pipe理面板。 在pipe理面板里面,当我尝试创build一个用户时,同样的事情发生了。 但用户被创build。 奇怪的是,即使我勾选了发送邮件的方框,用户也不会收到包含详细信息的电子邮件。 我的nginx错误日志如下所示: PHP message: WordPress database error Table 'tkdpw39sna2.d3gsO9d_options' doesn't exist for query INSERT INTO `d3gsO9d_options` (`option_name`, `option_value`, `autoload`) VALUES ('rewrite_rules', '', 'yes') ON DUPLICATE KEY UPDATE `option_name` = VALUES(`option_name`), `option_value` = VALUES(`option_value`), `autoload` = VALUES(`autoload`) made by wp_install, flush_rewrite_rules, WP_Rewrite->flush_rules, update_option, add_option" while reading upstream, […]

为Cron Jobs专门运行VPS?

我正在build立一个应用程序,这个应用程序将被客户基本上用来打击公众的目标,已经引起了很大的兴趣。 数据库服务器已经是外部的,在Amazon RDS上运行。 我有许多cron作业,有的每分钟运行一次 – 连接到客户端数据库中列出的每个SHOUTCast服务器,并parsing所有统计信息(listener,tunes,djs等),并将它们input到数据库中已经。 为了节省自己的服务器的时间被超时的麻烦,是值得从像Lightsail,Linode,DigitalOcean等某个地方的低端VPS和运行所有的克朗作为一个专用的任务服务器? 谢谢

在之前的条件之前,try_files服务会退回

忍受我,因为我是新来的。 我已经把一个nginx服务器configuration放在一起工作,直到我注意到在适用时没有抛出404错误。 所以我添加到我的try_files条件= 404回落。 但现在它不符合@rewrite的条件,并显示所有的页面,但主页为404。 这是configuration的适用部分 server { error_page 404 /404.html; location / { index index.php; try_files $uri $uri/ @rewrite; } location @rewrite { #rewrites rewrite ^/listings/(\d+)/(.*)$ /index.php?op=default&_a=listing&id=$1 last; rewrite ^/subcategories/(\d+)/(.*)$ /index.php?op=default&_a=subcategory&id=$1 last; rewrite ^/categories/(\d+)/(.*)$ /index.php?op=default&_a=category&id=$1 last; rewrite ^/companies/(\d+)/(.*)/(.*)$ /index.php?op=default&_a=vendor&id=$1&_b=$3 last; rewrite ^/companies/(\d+)/(.*)$ /index.php?op=default&_a=vendor&id=$1 last; rewrite ^/classifieds/(.*)/(.*)$ /index.php?op=default&_a=classified&cf_type=$1&url=$2 last; rewrite ^/classifieds/(.*)$ /index.php?op=default&_a=classified&cf_type=$1 last; rewrite ^/classifieds$ […]

FreeBSD杀死一批PHP中的孤立进程

我正在使用FreeBSD,而且我需要一个脚本,这个脚本将会为我杀掉孤立的PHP进程。 为什么在一批? 因为据说有1000多个。 我在nginx服务器上运行php-fpm

Microsoft Web平台安装程序无法安装PhP 7.0.1

今天,我安装了用于Web应用程序开发的Windows 2012服务器。 我需要IIS和PhP 7.我像往常一样安装和testingIIS添加Web服务器function,testing使用提供的“欢迎”页面 – >确定。 要安装PhP,Microsoft迫使我使用他们的“Web平台安装程序”工具。 我这样做,并告诉它安装PhP 7.0.15(x64),这似乎是他们支持的最新版本。 经过一段相当漫长的过程(似乎他们也在后台静静地安装了更多的软件,特别是一个VC ++ 2008(!)可再发行组件),我得到了一个成功的消息:“安装PhP 7.0.15(x64)”和“Windowscaching扩展2.0 x64)为PhP 7.0“。 看起来不错。 被微软工具咬了太多次,我使用通常的三行PhP检查脚本自己检查了正确的PhP版本,令我惊讶的是我得到了版本号5.3.28(x86)。 我重复了这个过程两次,中间安装了一个全新的服务器(Web平台安装程序似乎没有“卸载”function),第二次我做了一系列的截图。 毫无疑问,Web平台安装程序将安装5.3.28(x86)版本的PhP。 我做了另一个干净的安装,这次我select了7.0(x86),这只是一个比特性问题。 由于无法安装依赖项产品,因此安装程序立即失败,显然,依赖项是未在(x64)上安装的VC ++ 2008 Redistributable(x86)。 仔细看,我注意到,即使Web平台安装程序失败,但仍安装5.3(x86)。 似乎是一种“永远”安装。 任何线索我怎么能得到这个微软安装程序来安装它所说的,而不是5.3.28? 另外:任何人都可以提供说明如何在上述平台上手动安装PhP 7.0? 似乎“Web平台安装程序”不是一个解决scheme,而是另一个问题。 日Thnx 阿明。

PHP&Ajax – > XHRnetworking延迟?

介绍: 上周一我的业务(Debian 8,Postgres 9.3,Apache 2和PHP 5)的Web服务器崩溃:(好新的是我有数据的备份:) 从那时起,我正在安装这个环境的新服务器:Debian 8,Postgrest 9.4,Apache 2,PHP 5 今天服务器工作正常,我已经恢复了Postgres表上的数据。 在网站上我有一个页面,我加载Postgres查询的数据。 我用checkboxselect行,我点击一个button,使用Jquery + Ajax + PHP更新数据库中的select寄存器 问题: 从我重新安装新的服务器,当我想更新寄存器,我不能正确显示。 我已经重新加载到页面,以正确​​查看更新。 例如:我select了8个寄存器,点击button来更改一个字段,执行完update.php之后,只更新了6个,而不是2个(这个有时会发生,可能我select了8个和5个好的…或者其他的 我使用PHP的Ajax与jQuery。 问题是服务器,但在旧的服务器工作正常。 我在浏览器的debuggingnetworking控制台中看到问题。 debugging控制台 我禁用了iptables服务来testing。 我已经检查了apache.conf和postgres.conf。

WordPress的Nginx PHP-FPM超时POST请求

我有一个庞大的数据库和大量的观众访问WordPress的安装。 我正在使用PHP-FPM和Nginx的Ubuntu服务器。 该网站运行几乎完美,除了人们试图在网站上发布一个post。 当有人在网站上提交post时,需要很长的时间,然后给他们留言: 过了一段时间,它会发布。 这是非常繁琐的,但是因为很多职位都想提出来。 这是我的nginxconfiguration: events { worker_connections 1024; use epoll; multi_accept on; } http { ## # EasyEngine Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 2; keepalive_requests 100000; types_hash_max_size 2048; server_tokens off; reset_timedout_connection on; add_header X-Powered-By "EasyEngine 3.7.4"; add_header rt-Fastcgi-Cache $upstream_cache_status; # Limit Request limit_req_status 403; limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; […]

如何用libmysqlclient.so编译mariadb? (在/ usr / local / mysql / lib中缺lesslibmysqlclient.so)

我刚刚开始将数据库从mysql(社区版本)更改为mariadb与进一步使用php7.1 / apache2.4.25 …所以我必须在我们的新的生产环境中编译mariadb。 我用这些选项编译它: cmake -DCMAKE_CXX_FLAGS:STRING="-std=c++11" -DCONC_WITH_CURL=ON -DCONC_WITH_EXTERNAL_ZLIB=ON -DDISABLE_SHARED=OFF -DCONC_WITH_MYSQLCOMPAT:BOOL=ON -DPLUGIN_CLIENT_ED25519:STRING=DYNAMIC . make all && make install mysql社区版本在/ usr / local / mysql / lib中有一个libmysqlclient.so。 如果我用上面给出的选项编译它,我只是在/ usr / local / mysql / lib(MariaDB 10.2.6)中find这个文件: # ls -l /usr/local/mysql/lib/ total 3572 -rw-r–r– 1 root root 2305518 Jul 4 08:14 libmariadbclient.a lrwxrwxrwx 1 root root 15 […]

AdoDBexception – 2013:在查询期间丢失与MySQL服务器的连接

由于AdoDB引擎抛出这个exception(CR_SERVER_LOST),我的一些PHP进程失败。 看起来像服务器中止连接,但这只发生在两个查询之间至less有一个小时的长执行时间进程。 我查看了这里的官方故障排除指南( https://dev.mysql.com/doc/refman/5.7/en/gone-away.html ),但我BLOBsize,超时值,大查询大小和失败的mysql实例病例可以排除在外。 mysql的系统variables也和我的开发系统差不多,错误没有显示出来(至less有一个多小时的时间不足以重现错误)。 那么可能是什么问题呢? 任何暗示,将不胜感激。