Articles of PHP

在nginxconfiguration中处理多个服务器块

我正在为我的应用程序设置一个代理服务器。用例是我想要一个特定的请求redirect到说abc.com和其余的请求被redirect到xyz.com 。 例如:如果用户请求www.nginx.com ,它应该去nginx.com:8000,其余的请求应该去sites.nginx.com server { # Listen on port 80 for all IPs associated with your machine listen 80; # Catch only requests for www.nginx.com server_name www.nginx.com; location / { # Pass the request to your Apache server running on IP xxxx and port 8000 proxy_pass http://www.nginx.com:8000; } } # Server for S3 server […]

如何configurationsendmail只发送到指定的域?

我有一个本地开发服务器(centos),我开发了一些网站。 有时我需要testing电子邮件发送脚本。 我想避免开发服务器发送电子邮件给没有特定域的电子邮件地址的人(即:[email protected][email protected]等)。 所以,我想在服务器上创build一个白名单或规则,防止邮件发送到任何不符合mydomain.com的电子邮件地址。 我目前正在使用PHP内置的mail()函数。 但我想这是更多的服务器级别的东西,我想要的东西,将pipe理从任何程序/应用程序/脚本/ /等从服务器发出的任何电子邮件。 我可以确认PHP正在使用/usr/sbin/sendmail.sendmail

Php执行完成后长时间运行的Apache进程

阿帕奇/ 2.2.3 PHP 5.2.5 CentOS 5 跟踪 跟踪详细图片 启动php 运行脚本 运行kill(注册php关机function) Apache仍然运行很久,不明原因 这不会发生每一页的负载。 我如何追踪Apache正在做什么?

cURL不能在Ubuntu 12.04上加载

我遇到了一个非常奇怪的问题。 我的cURL PHP扩展似乎没有运行。 我用这个命令安装了cURL: sudo apt-get install curl libcurl3 libcurl3-dev php5-curl 并且在安装过程中一切都运行良好,它会重新启动apache2没有任何错误。 我检查了php.ini文件,并在最后添加了一行: extension=php_curl.so 而且它仍然不起作用。 提前致谢!

my.cnf和php.ini出现问题 – 使用mysql tuner

我的服务器运行良好,直到Plesk最近更新,现在一直很慢。 我的服务器技术不得不重buildApacheconfiguration文件,并且自从网站速度缓慢。 服务器是1and1的XL8专用盒子。 它有16GB的内存和一个8核心的CPU。 该服务器包含2个相当繁忙的vbulletin论坛和一些较小的网站。 这是我设置的当前my.cnf – [mysqld] #bind-address=127.0.0.1 #skip-bdb local-infile=0 max_connections=90 open_files_limit=2050 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 query_cache_limit = 1M query_cache_size = 15M join_buffer_size = 512K read_buffer_size = 1M tmp_table_size = 3024M thread_cache_size = 8 table_cache = 450 innodb_buffer_pool_size = 540M key_buffer_size = 32M table_definition_cache […]

如何在Centos 6.4上正确降级PHP 5.5到5.3

我安装了Centos_6.4,并有大约2周的时间来设置我的环境和服务器。 所以我到了我的Kayako支持套件,它不会安装,他们说我必须使用PHP 5.3 我已经search了几个小时,并尝试每一个build议可以find,并在所有尝试结束时PHpstill显示5.5和Im难住。 如何在CentOS 6.4 64位服务器上将PHP 5.5降级到5.3

与PHPMailer一起使用SSMTP

我不知道这是否需要张贴在这里或StackOverflow,因为我不确定是否PHPMailer或SSMTP的问题。 我在使用PHPMailer和SSMTP发送电子邮件时遇到了一些麻烦。 我已经configurationSSMTP使用外部服务器发送电子邮件。 validation成功,电子邮件发送到我的收件箱。 问题是,“发件人”是“万维网所有者”(但电子邮件地址是确定的),电子邮件正文是空的。 在我的ssmtp.conf文件中,“FromLineOverride”设置为“YES”。 我也在我的php.ini文件中将sendmail_path设置为/ usr / local / sbin / ssmtp -t。 我的脚本以默认的方式(邮件)调用PHPMailer。 我也尝试将其设置为Sendmail,但没有成功。 我的脚本还设置了在PHPMailer(PHPMailer :: $ Sendmail)中使用“-t”指向ssmtp的path 我search了几个小时,但是我的search没有帮助我。 有什么吗?

Apache,PHP,Maven和Me-pemissions …

我已经build立了一个本地的Apache2,PHP和MySQL。 我写了一个maven构build脚本来在本地服务器上部署我的页面。 除了一件事之外,所有这些工作都很好: 当我指示maven清理页面,意味着删除所有文件,它运行在权限问题,因为maven不能删除由php创build的文件和目录。 我创build了一个名为“网站”的组织。 »我和»www-data«都是该组的成员。 所有的文件安装完毕后,意味着复制到正确的位置,maven运行两个小命令: chown -R me:web www-dir和chmod -R 777 www-dir ,一切工作正常。 运行网站使得PHP创build文件和目录具有以下drwxr-xr-x 2 www-data www-data : drwxr-xr-x 2 www-data www-data和maven(或me)不允许删除这些文件。 尝试运行chmod和chown会导致相同的权限错误。 我怎样才能解决这个问题,而不使用魔术»sudo-power«? 问候philipp

安全地configurationphp的nginx

我想使用Nginx的Symfony2网站和其他软件,如phpMyAdmin。 我已经阅读了关于设置Symfony2的nginx文档,并且遇到了这个问题: http : //www.webhostingtalk.com/showthread.php? p=6807475#post6807475 我可以只使用security.limit_extensions=php ,然后使用这样的安全吗? location \.php$ { … } 这个博客似乎表明这是一个解决安全问题的file upload: http : //kaiwangchen.com/blog/2012/10/understand-the-cgi-fix_pathinfo-security-issue/ 但是大多数带有用于设置nginx的教程的地方都推荐了将php限制到特定文件的旧解决scheme。 所以我不确定这是否真的避免了任意代码注入。 或者我应该使用try_files ?

为什么mongo pecl模块在主stepDown后失去连接?

我用pecl模块“mongo 1.4.4”运行Apache 2.2.22-13。 它连接到一个MongoDB 2.4.6分片群集。 当发生stepDown时,mongo模块似乎停留在主要的mongod节点上,并且说:“PHP致命错误:带有消息”node1.mongodb.cluster:27017的未捕获exception'MongoCursorException':远程服务器已closures连接' … 为了build立连接,我尝试了以下两种方法: $ m = new MongoClient('mongodb://mongod0.mongodb.cluster,mongod1.mongodb.cluster,mongod2.mongodb.cluster,mongod3.mongodb.cluster',array(“replicaSet”=>“myrs”)); 和 $ m = new MongoClient('mongodb://mongos.mongodb.cluster',array(“replicaSet”=>“myrs”)); 在stepDown之后,两种方式给出相同的错误信息。 使用第一个连接string,重新启动Apache足以让事情回到轨道上。 在最后一个,重新启动不:我不再有任何错误消息,但应该来自MongoDB的数据仍然丢失。 提前致谢, 格雷格。