Articles of PHP

重新编译PHP

说我编译和安装PHP,然后几个月后,我想添加一个额外的延伸。 我是否需要指定我在初始安装期间包含的所有内容以及所需的新模块? 如果我不记得我用来编译我的初始PHP安装的确切命令? 我必须经历整个… ./configure … make && make install

混合的IP和名字为基础的虚拟主机与Nginx

我build立了许多域,但我不知道如何configuration,如果只有IP地址给出。 说foo.com我有一个设置去web / foo.com / htdocs,我想把88.99.66.55这个ip地址像一个域名到web / fook.com / htdocs server { listen 80; server_name 85.99.66.55; location / { root /home/web/fook.com/htdocs; } location ~ \.(php|php3|php4|php5)$ { root /home/web/fook.com/htdocs; include fastcgi_params; fastcgi_pass 127.0.0.1:9000; } } 导致 [warn]: conflicting server name "85.105.65.219" on 0.0.0.0:80, ignored

升级PHP v5.3.3到v5.3.4

我目前已经安装并configuration了PHP v5.3.3。 一切正常,但我想保持最新的PHP并升级到v5.3.4。 有人可以在手动编译时描述通常的PHP升级过程吗? 例如:是否就像下载最新的源代码一样简单,解压缩,使用上一版本中使用的相同(或类似)选项编译它? 是否有任何必须删除或更改以前的版本安装? 我无能为力 请帮忙! 编辑: 我认为一般的共识是备份,在testing服务器上尝试,并logging一切 。 感谢您的反馈!

从php脚本运行git pull

我正在尝试使用Git,GitHub和SSH的完美工作stream,但似乎我无法运行git pull 。 我试过git status ,这很好。 当我git pull 2>&1我得到: 错误:无法打开.git / FETCH_HEAD:权限被拒绝 我试图chmod .git目录到777没有运气。 当我从浏览器运行whoami ,它显示我: apache —编辑— 我只是做了chown apache:apache -R .git ,现在我得到: 无法创build目录“/.ssh”。 主机密钥validation失败。 致命的:远端意外挂断

用Macport从php 5.3升级到php 5.4

PHP5.4已经有一段时间了,Macport最近赶上了php54的发布版本,但升级的过程并不尽如人意。 对于那些在同一台机器上维护多个版本的PHP的人来说,这甚至是最糟糕的。 我热衷于试用PHP5.4中的一些新特性,比如特性,新的数组forms等,但是为了其他的兼容性,又回到了php5.3。 所以我 sudo port install php5+ (all the variants, apache2 etc) 然后我告诉它使用什么PHP端口作为默认 sudo port select –set php php54 使用php -v输出php 5.4.3检查在terminal中激活了哪个PHP版本。 但我似乎有select正确的非Cli版本的问题,如在由Apache等运行的模块的版本,仍然是php5.3.12。 我必须在Apache httpd.conf中更改对libphp5的引用吗? 任何build议在正确的工作stream程之间切换php版本的macport非常感谢!

使用IUSR帐户的IIS 7.5 / W2K8上的PHP不是IIS_APPPOOL \ DefaultAppPool

我正在设置一个新的Web服务器,并尝试使用Windows Server 2008 R2中提供的新应用程序池标识(如下所述: http : //learn.iis.net/page.aspx/624/application-pool-identities/ )来保护文件夹结构。 但是,似乎PHP仍然使用本地IUSR帐户,即使我已经在php.ini中将FastCGI模拟设置为true – 我如何让PHP在Application Pool Identity下运行? 相关文件夹是c:\ inetpub \ wwwroot之外的共享caching目录。 当我给IIS_APPPOOL \ DefaultAppPool修改特权时,PHP文件不能访问该文件夹,但他们可以当我给予SERVERNAME \ IUSR(或用户组)的权限。 在IIS中使用Web平台安装程序安装PHP 5.3。 PHP应用程序使用Zend_Cache,如果有所作为。

PHP处理程序(CGI vs FastCGI vs Mod_PHP vs suPHP)有什么区别?

我知道有四个不同的PHP处理程序(AFAIK)。 CGI(php-cgi) FastCGI(php-fpm) mod_php的 suPHP 我需要知道这些处理程序的优缺点,以及哪些环境适合于哪些环境? 例如,如果我正在运行一个共享的托pipe服务器上面哪个处理程序适合我? 或者,如果我pipe理私人服务器?

Nginx – 为所有主机启用PHP

我目前正在testingnginx,并通过将每个虚拟主机的configuration放置在一个名为sites-enabled的文件夹中的自己的文件中来设置一些虚拟主机。 然后我问nginx加载所有这些configuration文件使用: include C:/nginx/sites-enabled/*.conf; 这是我目前的configuration: http { server_names_hash_bucket_size 64; include mime.types; include C:/nginx/sites-enabled/*.conf; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; root C:/www-root; #charset koi8-r; #access_log logs/host.access.log main; location / { index index.html index.htm index.php; } # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; […]

如何以特定用户的身份运行HTTPD而不是任何人?

目前, top显示,几乎所有的httpd进程都由nobody运行。 “差不多”是因为其中2个是由root运行的。 我怎么能这样做,让我有用户说: dartagnan , porthos , athos , athos运行httpd每个分别为所述的用户? 我希望看到这样的事情,当我跑top : PID用户命令 1234 dartagnan / usr / local / apache / bin / httpd -k start -DSSL 12 porthos / usr / local / apache / bin / httpd -k start -DSSL 342 aramis / usr / local / apache / bin / […]

php-fpm和nginx @高CPU使用率?

我的服务器与DigitalOcean的计划如下: 2 Core Processor 2 GB Memory 我的网站正在接受成千上万的访问者,但是,两个CPU核心都是@ 100%: 这个问题似乎与php-fpm和nginx: worker process 。 我已经对服务器做了很多优化,但是我仍然无法让它冷静下来。 这是我的nginx.conf : user www-data; worker_processes 2; pid /run/nginx.pid; events { worker_connections 2048; # multi_accept on; } http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; server_tokens off; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # server_names_hash_bucket_size […]