Questions tagged «php»

PHP是一种通用脚本语言,特别适合于Web开发。在线手册是有关语言语法的绝佳资源,并且具有大量内置和扩展功能列表。大多数扩展都可以在PECL中找到。

1
Apache .htaccess <ifModule在这里不允许
使用PHP 5.5在Ubuntu Precise上运行Apache 尝试访问我var/www/给了我500。 /var/log/apache2/error.log 显示: /var/www/web/.htaccess: &lt;IfModule not allowed here 我的.htacess是: DirectoryIndex app.php &lt;IfModule mod_rewrite.c&gt; RewriteEngine On RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$ RewriteRule ^(.*) - [E=BASE:%1] RewriteCond %{ENV:REDIRECT_STATUS} ^$ RewriteRule ^app\.php(/(.*)|$) %{ENV:BASE}/$2 [R=301,L] RewriteCond %{REQUEST_FILENAME} -f RewriteRule .? - [L] RewriteRule .? %{ENV:BASE}/app.php [L] &lt;/IfModule&gt; &lt;IfModule !mod_rewrite.c&gt; &lt;IfModule mod_alias.c&gt; RedirectMatch 302 …



1
Apache MPM-Worker与Prefork
我正在尝试找出可以在VPS上安装的最佳Apache MPM。我看到了一些基准测试,MPM Worker似乎比Prefork性能更好,但是由于某些原因,每个人似乎都建议在PHP设置中使用Prefork over Worker。 这仅仅是因为某些PHP函数不是线程安全的吗?只setlocale()想到了,但是我将在每个实例上使用相同的语言环境,因此我认为这不会成为问题。我的VPS内存不足,我觉得工作者MPM可以更好地满足我的需求,但是我不确定。 有人可以帮我下定决心吗?谢谢! PS:我也研究了nginx和lighttpd。nginx看起来很棒,但我试图避免从源代码进行编译,但我仍然不太了解php-fpm的用途。关于lighttpd-使用它设置PHP / FCGI非常容易,但是我听说它存在内存泄漏。这仍然是真的吗?

3
获取通过PHP从mail()发送的邮件的日志(sendmail?)
在某些服务器更改后,我们的PHP配置被取消,这导致客户端的大型邮件列表通过大约4,000个或更多地址部分超时。我们希望尽可能避免发送重复的邮件,并且我们拥有原始邮件列表。 邮件是使用PHP的mail()函数using发送的,该函数sendmail表示使用Exim。我已经看到了命令: sendmail -bp 这给了我出现的邮件列表。该列表不是很大,并且可能是准确的(这意味着该脚本仅在发送大约一百封电子邮件后超时) 是sendmail -bp获得此列表的最佳方法? 编辑:我mail.log在/var/log/mail.log或中找不到任何文件locate mail.log,但是WHM似乎对此有一些信息。
13 linux  php  email  sendmail  exim 

4
将默认值从Postfix的地址从www-data更改为其他内容
在Ubuntu服务器上设置Postfix和Apache / PHP。邮件现在可以使用正确的域名了,但是本地部分的显示名称始终为“ www-data”,因为我假设Postfix默认使用用户名。 在php.ini文件中,我可以将更sendmail_path改为,sendmail_path = "/usr/sbin/sendmail -t -i -f support@example.com"但电子邮件显示名称仍显示为www-data。我尝试以几种不同的方式指定显示名称,但是该名称被忽略,邮件仍然以www-data的形式发送出去。 我想做的是默认情况下,所有邮件都缺少,返回路径等。标头显示为"Example Support" &lt;support@example.com&gt;,但是我不确定是否可行。

3
在Apache中启用gzip压缩时未发送Content-Length?
我非常感谢您对理解Apache行为的一些帮助。 我正在从application / json中的iPhone Objective-C应用程序与PHP通信。Gzip压缩在服务器上启用,并由客户端请求。 从我的.htaccess: AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php application/json 对于较小的请求,Apache会设置“ Content-Length”标头。例如(这些值从标头在Objective-C中输出): Connection = "Keep-Alive"; "Content-Encoding" = gzip; "Content-Length" = 185; &lt;------------- "Content-Type" = "application/json"; Date = "Wed, 22 Sep 2010 12:20:27 GMT"; "Keep-Alive" = "timeout=3, max=149"; Server = Apache; Vary = "Accept-Encoding"; "X-Powered-By" = "PHP/5.2.13"; "X-Uncompressed-Content-Length" …

12
在Ubuntu中,我对php.ini进行了更改,但没有任何反应
嗨,使用php的Apache运作良好,但是我在php.ini中所做的任何更改都没有生效,我什至删除了文件的所有内容,然后重新启动Apache,然后运行phpinfo(),令人惊讶的是,一切仍然可以正常进行。 我正在编辑的文件是出现在phpinfo()中的文件,例如“ Loaded Configuration File”。(/etc/php5/apache2/php.ini) PS我正在运行Ubuntu 9.04和PHP 5.2 更多细节: 我使用sudo /etc/init.d/apache2 restart重新启动,我也尝试过sudo /etc/init.d/apache2 stop,然后在重新启动时启动,我得到: 重新启动Web服务器apache2 apache2:无法可靠地确定服务器的完全限定域名,对于ServerName使用127.0.1.1 ...等待apache2:无法可靠地确定服务器的完全限定域名,对于ServerName使用127.0.1.1 [确定] “哪个php”没有产生任何结果。 我的PHP安装是使用Synaptic软件包管理器完成的,选择“按任务标记软件包”,然后选择LAMP服务器。 我不知道该怎么办...
13 linux  apache-2.2  ubuntu  php 

4
Windows Server 2012 R2用尽了临时端口,尽管不应
我们的专用服务器上的网络经常会遇到奇怪的问题。它在具有16 GB RAM和Intel 82575EB网络适配器的Xeon E5620上运行Windows Server 2012 R2 x64。 请注意,我们已经调整HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters键值TcpTimedWaitDelay,并MaxUserPort分别以30和65530。 我们的网站在随机的时间停止响应,原因是它们无法连接到本地数据库。开始出现此问题大约需要2周的正常运行时间。系统日志开始收到TCPIP警告4227和4231。它指出“由于使用了所有此类端口,因此从全局TCP端口空间分配临时端口号的请求失败。” 如果我跑 Get-Counter -Counter \TCPv4\* 要么 Get-Counter -Counter \TCPv6\* 要么 netstat -abn | find /c ":" 我总是得到500-1500个连接的合理值,甚至没有接近65K的极限。 此外,“本地主机”将停止本地解析为:: 1,还原为127.0.0.1。 只有强制重启计算机才能解决此问题。 可能是网络适配器问题吗? 更新1 重新启动邮件服务器后,它又发生了一次,似乎已经解决了。但是很奇怪,所有计数器显示约有1000个连接,而此时有约500个处于活动状态,当尝试连接到与邮件服务器无关的数据库时,仍然显示10055套接字错误。 更新2 这很奇怪,但是每天重新启动邮件服务可以完全解决问题。

1
PHP主机名不正确
我们有一个已经运行大约2年的应用程序,没有任何问题。 今天早上,当我进入网站时出现错误: Session: connection failed 我检查了数据库连接,检查了用户,检查了用户的授权,一切看起来都很好。 我使用.inc.xml文件中的连接信息创建了一个测试页 得到了一个mysql连接错误。 这是原始文件: &lt;TYPE&gt;mysql&lt;/TYPE&gt; &lt;HOST&gt;dbl&lt;/HOST&gt; &lt;USER&gt;dbuser&lt;/USER&gt; &lt;PASSWORD key="PUT A KEY HERE TO DECRYPT THE PASSWORD"&gt;password&lt;/PASSWORD&gt; 服务器的主机名不是dbl 我将第二行更改为: &lt;TYPE&gt;mysql&lt;/TYPE&gt; &lt;HOST&gt;localhost&lt;/HOST&gt; &lt;USER&gt;dbuser&lt;/USER&gt; &lt;PASSWORD key="PUT A KEY HERE TO DECRYPT THE PASSWORD"&gt;password&lt;/PASSWORD&gt; 连接良好。 对原始.inc.xml文件进行了相同的更改,该应用程序已备份并正常运行。 我的问题: 我检查了审核日志,连接,查询,大约3星期没有访问系统。 .inc.xml的最新修改时间在一年前。 为什么应用程序突然停止以dbl作为主机? 该dbl主机名来自何处? 系统布局: [root@acpr-web-x ~]# cat /proc/version Linux version 2.6.32-358.2.1.el6.x86_64 …
12 php  redhat  httpd 

2
如何在php中安装GD库?
当我尝试在PHP中使用imagefromjpeg()函数时,抛出了错误。因此,我尝试使用以下命令安装GD库: sudo apt-get install php5-gd 但是我遇到了以下错误。 php5-gd : Depends: php5-common (= 5.5.9+dfsg-1ubuntu4) but 5.5.10+dfsg-1+deb.sury.org~saucy+1 is to be installed E: Unable to correct problems, you have held broken packages. 我正在使用Ubuntu 14.04LTS。我最近从ubuntu 13.10升级了操作系统。如何克服这个错误? 的输出dpkg -l|grep php 是: ii cakephp 1.3.15-1 all MVC rapid application development framework for PHP ii cakephp-scripts 1.3.15-1 all …
12 ubuntu  php  gd 

1
为什么不能从IIS上的WWW访问laravel的php artisan服务服务器
我有一个通过laravel artisan 服务器运行的laravel应用程序: php artisan serve 如果我继续使用它,它就可以正常工作localhost:8000。此外,我在IIS服务器中添加了入站规则,如下所示: 控制面板-&gt;管理工具-&gt;具有高级安全性的Windows防火墙,入站规则。制定新规则“允许端口,TCP,8000,所有配置文件 但是由于某种原因,我仍然无法从WWW访问该网站(我为webrick服务器(在同一台计算机上)执行了完全相同的步骤,并且一切正常。)有什么想法吗?

1
我的nginx重写正在下载php文件
我正在尝试以下重写规则: location / { index index.php index.html; rewrite ^/test$ /test.php break; } 我也有: location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME /home/sites/default$fastcgi_script_name; fastcgi_index index.php; } 正常的php文件可以正常工作,但是似乎我的重定向只是下载要重定向到的php文件,而不是解析它。 我想念什么?我加载了文件,而不是通过在第一个位置块中放入fastcgi来下载文件,但仍然没有将其解析为php。
12 php  nginx  rewrite 

6
为什么下载PHP文件而不是由Nginx处理?
我已经看到了相同的问题,并且针对它的许多解决方案都指向添加类型处理程序,但这是针对Apache的。 我正在使用Arch Linux,Nginx,PHP和PHP-FMP,但我不知道为什么要下载php文件而不是运行它。 这是我的nginx.conf: #user http; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; …
12 php  nginx  php-fpm 

8
这是黑客尝试吗?
浏览我的404日志时,我注意到以下两个URL,它们两个都发生一次: /library.php=../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ 和 /library.php=../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ%00 有问题的页面library.php需要一个type具有六个不同可接受值的id变量,然后是一个变量。因此,有效的网址可能是 library.php?type=Circle-K&amp;id=Strange-Things-Are-Afoot 并且所有ID都必须mysql_real_escape_string先运行,然后才能用于查询数据库。 我是菜鸟,但在我看来,这两个链接都是针对Webroot的简单攻击? 1)如何最好地防止404以外的其他事情? 2)我应该永久禁止负责的IP吗? 编辑:也只是注意到这一 /library.php=http://www.basfalt.no/scripts/danger.txt 编辑2:所有这3次攻击的违法IP都216.97.231.15追溯到位于洛杉矶外部的ISP,称为Lunar Pages。 编辑3:我决定在当地时间星期五早上致电ISP,并与可以与我打电话的人讨论这个问题。我将在24小时左右的时间内将结果发布在这里。 编辑4:我最终给他们的管理员发送了电子邮件,他们首先回答说“他们正在调查”,然后一天后回答“现在应该解决此问题”。遗憾的是,没有更多细节。
12 security  mysql  php  hacking 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.