Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 Jun 2006 19:07:51 -0400
From:      "fbsd" <fbsd@a1poweruser.com>
To:        "John DeStefano" <john.destefano@gmail.com>, <freebsd-questions@freebsd.org>
Subject:   RE: Virtual hosts and PHP "downloads": php5 and apache22 on FreeBSD6.1-STABLE
Message-ID:  <MIEPLLIBMLEEABPDBIEGIEBPHIAA.fbsd@a1poweruser.com>
In-Reply-To: <f2160e0d0606061245t7d1eb3deg9091d9117fccf3c3@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
The php5 port is broken in 6.1.
It no longer defaults to activating the php/apache module.

This has been covered in great detail on this list in the past 6
weeks which you would have found out if you reviewed the list
archives before posting this question.

After downloading the 6.1 version php5 port config files you have to
do "make config" and select the apache module. The "make install"
will automatically make the correct changes to your httpd-config
file for serving up php pages correctly. php5-extensions is not
normally needed.

Your other httpd-config problems are due to you using apache22
instead of apache13 which is the rock hard production version of
Apache web server. Apache22 is generally considered as the
developmental version.



-----Original Message-----
From: owner-freebsd-questions@freebsd.org
[mailto:owner-freebsd-questions@freebsd.org]On Behalf Of John
DeStefano
Sent: Tuesday, June 06, 2006 3:46 PM
To: freebsd-questions@freebsd.org
Subject: Virtual hosts and PHP "downloads": php5 and apache22 on
FreeBSD6.1-STABLE


I upgraded my system from 5.4-RELEASE to 6.1-STABLE last week, and
my
web server immediately stopped serving PHP pages, where I had no
problem doing so before.  Instead of processing the PHP code on the
server and displaying the result in a browser, browsing to any page
containing PHP code resulted in a prompt to download the PHP page as
a
file.

/usr/ports/UPGRADING mentions that PHP has been streamlined and must
be recompiled to work with Apache and other packages. After
deinstalling, configuring (where applicable), and reinstalling PHP5,
php5-extensions, and apache2 to the latest versions, not only were
PHP
files not being served, but my web server was toast:
"Forbidden You don't have permission to access / on this server."

I edited the new apache config file (now located in
/usr/local/etc/apache22/httpd.conf) with my system information,
including a DocumentRoot path. But when I started apache, I got some
very peculiar errors:
"Warning: DocumentRoot [/www/docs/dummy-host.example.com] does not
exist
Warning: DocumentRoot [/www/docs/dummy-host2.example.com] does not
exist"

Not only did I confirm beforehand that I had set the DocumentRoot
path, and that apache was using the correct config file... but these
"dummy" paths didn't exist in the config file!  I learned eventually
that a new apache directive splits out virtual host directives to a
new include file (/usr/local/etc/apache22/extra/httpd-vhosts.conf).
Then I learned after getting a server warning ("NameVirtualHost *:80
has no VirtualHosts") that the syntax has been slightly modified, so
that the IP/port value of each VirtualHost specification must match
that of the NameVirtualHost directive (i.e., "NameVirtualHost *:80"
and "<VirtualHost *:80>").

Still having trouble though: my "main" site loads properly, but the
other virtual hosts aren't. Browsing to any virtual host address
other
than the default results in either the wrong content or an error.
Here's what my httpd-vhosts.conf looks like:

NameVirtualHost *:80

<VirtualHost *:80>
ServerName www.SiteA.com
ServerAlias SiteA.com *.SiteA.com
DocumentRoot /usr/www
ErrorLog /var/log/httpd-SiteA-error.log
CustomLog /var/log/httpd-SiteA-access.log combined
</VirtualHost>

<VirtualHost *:80>
ServerName www.SiteB.com
ServerAlias SiteB.com *.SiteB.com
DocumentRoot /usr/www2
ErrorLog /var/log/httpd-SiteB-error.log
CustomLog /var/log/httpd-SiteB-access.log combined
</VirtualHost>

So, what's happening is that SiteA works as expected, but browsing
to
SiteB brings you to SiteA, or doesn't load at all ("403" error).

In addition, I'm back to my original problem, where PHP files are
not
loading, and browsing to a PHP page prompts the user to download the
page as a file.

Any help on either the virtual hosts or the PHP download issue would
be greatly appreciated.

Thanks,
~John
_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to
"freebsd-questions-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?MIEPLLIBMLEEABPDBIEGIEBPHIAA.fbsd>