<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: The sysadmin view on &#8220;Why PHP&#8221;</title>
	<atom:link href="http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/</link>
	<description>News, opinion, and fresh thinking for web developers and designers. The official podcast of sitepoint.com.</description>
	<lastBuildDate>Sun, 22 Nov 2009 11:54:05 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: 59DhEIWFSa</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-40304</link>
		<dc:creator>59DhEIWFSa</dc:creator>
		<pubDate>Tue, 25 Jul 2006 03:26:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-40304</guid>
		<description>FwTzTc5hQ4 heyokvgvJD wDD5AI6HpIOd8M</description>
		<content:encoded><![CDATA[<p>FwTzTc5hQ4 heyokvgvJD wDD5AI6HpIOd8M</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Internet Alchemy Infinite Scalability</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-14287</link>
		<dc:creator>Internet Alchemy Infinite Scalability</dc:creator>
		<pubDate>Wed, 22 Feb 2006 06:35:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-14287</guid>
		<description>[...] Addendum: Another benefit of fresh execution state on each request is that it&#039;s very hard to crash the system, which goes a long way to explain why PHP is ubiquitous in cheap hosting environments: With PHP it’s very hard for a script to take down the runtime environment—the web server—I’d argue that you’d have to be deliberately trying to do so, perhaps filling up disk space or otherwise. Innocent mistakes, specific instances of runtime problems (e.g. script execution too long) and bugs remain local to specific requests and the PHP script handling them. On the next request, we begin again from scratch.   Technorati tags: php, scalability. [...]</description>
		<content:encoded><![CDATA[<p>[...] Addendum: Another benefit of fresh execution state on each request is that it&#8217;s very hard to crash the system, which goes a long way to explain why PHP is ubiquitous in cheap hosting environments: With PHP it’s very hard for a script to take down the runtime environment—the web server—I’d argue that you’d have to be deliberately trying to do so, perhaps filling up disk space or otherwise. Innocent mistakes, specific instances of runtime problems (e.g. script execution too long) and bugs remain local to specific requests and the PHP script handling them. On the next request, we begin again from scratch.   Technorati tags: php, scalability. [...]</p>]]></content:encoded>
	</item>
	<item>
		<title>By: ahmed bakayoko</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-13919</link>
		<dc:creator>ahmed bakayoko</dc:creator>
		<pubDate>Mon, 13 Feb 2006 16:07:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-13919</guid>
		<description>i don&#039;t any site 2 put</description>
		<content:encoded><![CDATA[<p>i don&#8217;t any site 2 put</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Natalian &#187; Blog Archive &#187; Deploying is hard</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-12923</link>
		<dc:creator>Natalian &#187; Blog Archive &#187; Deploying is hard</dc:creator>
		<pubDate>Thu, 19 Jan 2006 23:57:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-12923</guid>
		<description>[...] So where are we? Back at square one. This blog about The sysadmin view on PHP is actually quite right. It is so easy to deploy a PHP application in comparison to Rails and Python. [...]</description>
		<content:encoded><![CDATA[<p>[...] So where are we? Back at square one. This blog about The sysadmin view on PHP is actually quite right. It is so easy to deploy a PHP application in comparison to Rails and Python. [...]</p>]]></content:encoded>
	</item>
	<item>
		<title>By: omnicity</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-12903</link>
		<dc:creator>omnicity</dc:creator>
		<pubDate>Thu, 19 Jan 2006 13:52:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-12903</guid>
		<description>&lt;blockquote&gt;Is this correct? I don’t think that Apache fires a whole PHP process for a GET /img/image.jpeg.&lt;/blockquote&gt;

I don&#039;t think so either - HTTP is supposed to be stateless, so that each resource requires an individual request. My understanding was that Apache evaluated each request on its own merits, regardless of source - the TCP/IP handshake that was mentioned is carried out at a lower layer than any HTTP processing. 

If this is indeed an issue can anyone provide a link to the evidance etc?</description>
		<content:encoded><![CDATA[<blockquote><p>Is this correct? I don’t think that Apache fires a whole PHP process for a GET /img/image.jpeg.</p></blockquote>
<p>I don&#8217;t think so either &#8211; HTTP is supposed to be stateless, so that each resource requires an individual request. My understanding was that Apache evaluated each request on its own merits, regardless of source &#8211; the TCP/IP handshake that was mentioned is carried out at a lower layer than any HTTP processing. </p>
<p>If this is indeed an issue can anyone provide a link to the evidance etc?</p>]]></content:encoded>
	</item>
	<item>
		<title>By: HarryF</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-12695</link>
		<dc:creator>HarryF</dc:creator>
		<pubDate>Fri, 13 Jan 2006 21:20:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-12695</guid>
		<description>&lt;blockquote&gt;
What about open_basedir?
&lt;/blockquote&gt;

In short, it takes shared hosts into a cat and mouse game.

open_basedir only effects PHP, which is still running with the same user as Apache. Via exec you might be able to execute standard Unix programs to which the restriction wouldn&#039;t apply. Or if a host has locked that down but still supports Perl, you  could have PHP execute them for you. Of course you could try to block that with safe_mode but, in reality, think safe_mode (and open_basedir) only discourages those who probably aren&#039;t that dangerous anyway. Well explained here: &lt;a href=&quot;http://ilia.ws/archives/18-PHPs-safe_mode-or-how-not-to-implement-security.html&quot; rel=&quot;nofollow&quot;&gt;http://ilia.ws/archives/18-PHPs-safe_mode-or-how-not-to-implement-security.html&lt;/a&gt;</description>
		<content:encoded><![CDATA[<blockquote><p>
What about open_basedir?
</p></blockquote>
<p>In short, it takes shared hosts into a cat and mouse game.</p>
<p>open_basedir only effects PHP, which is still running with the same user as Apache. Via exec you might be able to execute standard Unix programs to which the restriction wouldn&#8217;t apply. Or if a host has locked that down but still supports Perl, you  could have PHP execute them for you. Of course you could try to block that with safe_mode but, in reality, think safe_mode (and open_basedir) only discourages those who probably aren&#8217;t that dangerous anyway. Well explained here: <a href="http://ilia.ws/archives/18-PHPs-safe_mode-or-how-not-to-implement-security.html" rel="nofollow">http://ilia.ws/archives/18-PHPs-safe_mode-or-how-not-to-implement-security.html</a></p>]]></content:encoded>
	</item>
	<item>
		<title>By: LinhGB</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-12677</link>
		<dc:creator>LinhGB</dc:creator>
		<pubDate>Fri, 13 Jan 2006 05:50:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-12677</guid>
		<description>&lt;blockquote&gt;But you’re right, I underplayed the memory issue. Also probably underplaying the security issue for shared hosts—an interesting discussion &lt;a href=&quot;http://www.gossamer-threads.com/lists/modperl/modperl/86096&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;&lt;/blockquote&gt;

What about open_basedir?</description>
		<content:encoded><![CDATA[<blockquote><p>But you’re right, I underplayed the memory issue. Also probably underplaying the security issue for shared hosts—an interesting discussion <a href="http://www.gossamer-threads.com/lists/modperl/modperl/86096" rel="nofollow">here</a></p></blockquote>
<p>What about open_basedir?</p>]]></content:encoded>
	</item>
	<item>
		<title>By: HarryF</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-12662</link>
		<dc:creator>HarryF</dc:creator>
		<pubDate>Thu, 12 Jan 2006 16:20:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-12662</guid>
		<description>While I&#039;m here, here&#039;s a useful link: &lt;a href=&quot;http://www.clove.org/~aaron/presentations/apachecon2003/ac2003performance.pdf&quot; rel=&quot;nofollow&quot;&gt;Scalable Apache for Beginners&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p>While I&#8217;m here, here&#8217;s a useful link: <a href="http://www.clove.org/~aaron/presentations/apachecon2003/ac2003performance.pdf" rel="nofollow">Scalable Apache for Beginners</a>.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: HarryF</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-12661</link>
		<dc:creator>HarryF</dc:creator>
		<pubDate>Thu, 12 Jan 2006 16:16:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-12661</guid>
		<description>&lt;blockquote&gt;
It also means, that all of your images, style-sheets and static files are served by those “fat” child-processes that include an instanec of the php interpreter as well, which is why you often hear the advice of moving static files/images to a different webserver. Hence why many people are so happy with [lighttpd+]php as fcgi (it uses less system resources).
&lt;/blockquote&gt;

That&#039;s true although PHP&#039;s approach of refreshing the interpreter on each request I believe is what makes it more appealing vs. mod_perl and similar - no globals etc. Again it&#039;s aiming for the best compromise I guess.

And here PHP&#039;s persistent resources are an issue - George Schlossnagle also suggests a lightweight HTTP server on a subdomain for static content &lt;a href=&quot;http://www.oracle.com/technology/pub/articles/php_experts/scaling_oracle_and_php.html&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.

But you&#039;re right, I underplayed the memory issue. Also probably underplaying the security issue for shared hosts - an interesting discussion &lt;a href=&quot;http://www.gossamer-threads.com/lists/modperl/modperl/86096&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;;

&lt;blockquote&gt;
&gt;  On Dec 22, 2005, at 11:44 PM, pbdgny wrote:

shared hosts were all on mod_php for a while because thats what they thought they should do. but a funny thing happend - they realized that mod_php lets user_a acces all of user_b&#039;s files -- because everything runs as the apache instance user and is read/writeable by it. so most hosts started migrating to PHP/CGI via FasctCGI, so account holders can more easily run their scripts as a shell user. 
&lt;/blockquote&gt;

There&#039;s also some interesting research thanks to Ben Ramsey - &lt;a href=&quot;http://benramsey.com/archives/peruser-mpm-for-apache/&quot; rel=&quot;nofollow&quot;&gt;Peruser MPM for Apache&lt;/a&gt; - basically still no ideal solution for shared hosts.</description>
		<content:encoded><![CDATA[<blockquote><p>
It also means, that all of your images, style-sheets and static files are served by those “fat” child-processes that include an instanec of the php interpreter as well, which is why you often hear the advice of moving static files/images to a different webserver. Hence why many people are so happy with [lighttpd+]php as fcgi (it uses less system resources).
</p></blockquote>
<p>That&#8217;s true although PHP&#8217;s approach of refreshing the interpreter on each request I believe is what makes it more appealing vs. mod_perl and similar &#8211; no globals etc. Again it&#8217;s aiming for the best compromise I guess.</p>
<p>And here PHP&#8217;s persistent resources are an issue &#8211; George Schlossnagle also suggests a lightweight HTTP server on a subdomain for static content <a href="http://www.oracle.com/technology/pub/articles/php_experts/scaling_oracle_and_php.html" rel="nofollow">here</a>.</p>
<p>But you&#8217;re right, I underplayed the memory issue. Also probably underplaying the security issue for shared hosts &#8211; an interesting discussion <a href="http://www.gossamer-threads.com/lists/modperl/modperl/86096" rel="nofollow">here</a>;</p>
<blockquote><p>
&gt;  On Dec 22, 2005, at 11:44 PM, pbdgny wrote:</p>
<p>shared hosts were all on mod_php for a while because thats what they thought they should do. but a funny thing happend &#8211; they realized that mod_php lets user_a acces all of user_b&#8217;s files &#8212; because everything runs as the apache instance user and is read/writeable by it. so most hosts started migrating to PHP/CGI via FasctCGI, so account holders can more easily run their scripts as a shell user.
</p></blockquote>
<p>There&#8217;s also some interesting research thanks to Ben Ramsey &#8211; <a href="http://benramsey.com/archives/peruser-mpm-for-apache/" rel="nofollow">Peruser MPM for Apache</a> &#8211; basically still no ideal solution for shared hosts.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: omerida</title>
		<link>http://www.sitepoint.com/blogs/2006/01/10/the-sysadmin-view-on-why-php/comment-page-1/#comment-12655</link>
		<dc:creator>omerida</dc:creator>
		<pubDate>Thu, 12 Jan 2006 15:10:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.sitepoint.com/blogs/?p=1374#comment-12655</guid>
		<description>&lt;blockquote&gt;With PHP it’s very hard for a script to take down the runtime environment—the web server—I’d argue that you’d have to be deliberately trying to do so, perhaps filling up disk space or otherwise.&lt;/blockquote&gt;
I&#039;ve seen it done non-intentionally or maliciously, and of course you can do these in any language. One example, logging error or other messages to the filesystem but forgetting to rotate the log file.  That&#039;s particularly irritating because the file might quietly be growing while your server is happily serving pages until you get the page that the web server isn&#039;t responding and won&#039;t restart.  A second is having the server send you and email after every request that encounters a fatal error.  Encounter a fatal error during very heavy traffic and you&#039;ve just generated tons of mail for your server to deliver.</description>
		<content:encoded><![CDATA[<blockquote><p>With PHP it’s very hard for a script to take down the runtime environment—the web server—I’d argue that you’d have to be deliberately trying to do so, perhaps filling up disk space or otherwise.</p></blockquote>
<p>I&#8217;ve seen it done non-intentionally or maliciously, and of course you can do these in any language. One example, logging error or other messages to the filesystem but forgetting to rotate the log file.  That&#8217;s particularly irritating because the file might quietly be growing while your server is happily serving pages until you get the page that the web server isn&#8217;t responding and won&#8217;t restart.  A second is having the server send you and email after every request that encounters a fatal error.  Encounter a fatal error during very heavy traffic and you&#8217;ve just generated tons of mail for your server to deliver.</p>]]></content:encoded>
	</item>
</channel>
</rss>
