Apache, php?
doug at safeport.com
doug at safeport.com
Thu Jun 21 15:42:44 UTC 2007
On Wed, 20 Jun 2007, Jack Barnett wrote:
> doug wrote:
>> On Tue, 19 Jun 2007, Jack Barnett wrote:
>>
>>> FreeBSD 6.2
>>> Apache 1.3.37 (from ports)
>>> php 5.2.3 (from ports)
>>>
>>> on the command line doing `php index.php` works.
>>> But if I use it though a web browser it just displays the php code.
>>>
>>> I installed it like this (extensions to)
>>> http://www.mydigitallife.info/2006/04/14/installing-web-server-in-freebsd-60-with-apache-22-mysql-50-and-php-5-part-5/
>>>
>>> The only difference is that I'm using 1.3 and not 2.x of Apache.
>>>
>>> Apache config below
>>> Installing 2.x isn't an option yet (test server, still need 1.3)
>>>
>>> fire2# grep -i php *
>>> httpd.conf:AddType application/x-httpd-php .php
>>> httpd.conf:AddType application/x-httpd-php-source .phps
>>> httpd.conf: <IfModule mod_php3.c>
>>> httpd.conf: <IfModule mod_php4.c>
>>> httpd.conf: DirectoryIndex index.php index.php3 index.html
>>> httpd.conf: <IfModule !mod_php4.c>
>>> httpd.conf: DirectoryIndex index.php3 index.html
>>> httpd.conf: <IfModule !mod_php3.c>
>>> httpd.conf: <IfModule mod_php4.c>
>>> httpd.conf: DirectoryIndex index.php index.html
>>> httpd.conf: <IfModule !mod_php4.c>
>>> httpd.conf: <IfModule mod_php3.c>
>>> httpd.conf: AddType application/x-httpd-php3 .php3
>>> httpd.conf: AddType application/x-httpd-php3-source .php3s
>>> httpd.conf: <IfModule mod_php4.c>
>>> httpd.conf: AddType application/x-httpd-php .php
>>> httpd.conf: AddType application/x-httpd-php-source .phps
>>> httpd.conf: AddType application/x-httpd-php .php
>>> httpd.conf: AddType application/x-httpd-php-source .phps
>>>
>> I just installed this combination, among the changes to httpd.conf I change
>> pph4-->php5 (see below). You are not getting an index file. If you have
>> 'Options +Indexes' browsing will get you an index listing but will not run
>> index.php.
>>
>>
>> #
>> # This may also be "None", "All", or any combination of "Indexes",
>> @@ -452,18 +454,18 @@
>> #
>> <IfModule mod_dir.c>
>> <IfModule mod_php3.c>
>> - <IfModule mod_php4.c>
>> + <IfModule mod_php5.c>
>> DirectoryIndex index.php index.php3 index.html
>> </IfModule>
>> - <IfModule !mod_php4.c>
>> + <IfModule !mod_php5.c>
>> DirectoryIndex index.php3 index.html
>> </IfModule>
>> </IfModule>
>> <IfModule !mod_php3.c>
>> - <IfModule mod_php4.c>
>> + <IfModule mod_php5.c>
>> DirectoryIndex index.php index.html
>> </IfModule>
>> - <IfModule !mod_php4.c>
>> + <IfModule !mod_php5.c>
>> DirectoryIndex index.html
>> </IfModule>
>> </IfModule>
>>
>
> hrm... no I don't think that's it.
> I put this in:
> DirectoryIndex index.php index.html
>
> I have php5 install
>
> I created this file:
> test.php
> <?php print ("Hello World<BR>\n"); ?>
> But that doesn't work either.
>
> Is mod_layout screwing it up?
>
> I don't understand what is wrong with it?
> `php test.php` works fine.
>
> Also there is no Module Load/Add in the httpd.conf for php. I can't even
> find the libraries!
>
> But /usr/local/bin/ has php and php-cgi (both executables).
>
> Do I need to tell apache how to execute .php files?
>
Not sure you may also be missing the additions to the load and add modules
sections.
This setup was specifically to run SquirrelMail. I had a working test install
and I wanted to add SSL. My first shot was to just reinstall apache-modssl. This
required recompiling a single php module. I never got that done so I removed
apache, php and squirrel mail and installed (order is important):
apache-modssl
squirrelmail
and let the build for squirrelmail pull in php. In this order I got all the
necessary mods to httpd.conf and the php module I needed was rebuilt. If you are
facile with make all this can be skipped but I found it quicker to do it this
way.
Here are the php relate directive in my httpd.conf:
:
LoadModule php5_module libexec/apache/libphp5.so
:
AddModule mod_php5.c
:
<IfModule mod_php3.c>
<IfModule mod_php5.c>
DirectoryIndex index.php index.php3 index.html
</IfModule>
<IfModule !mod_php5.c>
DirectoryIndex index.php3 index.html
</IfModule>
</IfModule>
<IfModule !mod_php3.c>
<IfModule mod_php5.c>
DirectoryIndex index.php index.html
</IfModule>
<IfModule !mod_php5.c>
DirectoryIndex index.html
</IfModule>
</IfModule>
</IfModule>
:
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>
:
#SSLOptions +FakeBasicAuth +ExportCertData +CompatEnvVars +StrictRequire
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
This last one only if you have SSL (of course).
_____
Douglas Denault
http://www.safeport.com
doug at safeport.com
Voice: 301-469-8766
Fax: 301-469-0601
More information about the freebsd-questions
mailing list