FreeBSD Port: dspam-3.2.2.20041117.1515

Ion-Mihai Tetcu itetcu at people.tecnik93.com
Wed Dec 1 15:22:45 PST 2004


On Wed, 01 Dec 2004 15:56:21 -0700
Gerald Herrera <gherrera at cnetco.com> wrote:

> FreeBSD 5.3

First let my say that I am not happy with the way the cgi part is
handled. However I don't know how exactly it can be improved;
suggestions documentation and patches are always welcome.

> I was trying to install this port, it does not copy the cgi scripts and 
> support directories to Apache /usr/local/www/data folder.  Because when 
> Apache is loaded the folder /usr/local/www/data is a symbolic link back 
> to /usr/local/www/data-dist folder.  Plus the permissions on both the 
> cgi-bin-dist & data-dist are read only.

First, I don't understand why web data files are not stored on /var; the
fact that the apache ports put data-dist under /usr/local it's OK,
because those files don't change, but this shouldn't prevent you to put
you DocumentRoot in another place. I will change the port to have the
default CGI_PATH=${DSPAM_HOME}/CGI/

If you choose the CGI options in the OPTIONS screen, you will get :
>> Define CGI_PATH before make-ing if you need the CGI files
    installed in other place that this installation's default
>> /usr/local/www/vhosts/dspam

You can define CGI_PATH to be /usr/local/www/data.
( make CGI_PATH=/usr/local/www/data install )

However I don't find this to be a very good idea because putting your
own files in data-dist has an unfortunate tendency to break apache
portupgrading.

> Also, the .htaccess file is not generated in the /usr/local/www/data 
> folder.

Exactly what .htaccess file are you talking about ?

>  Therefore, manually correcting everything still generates the 
> errors on a client web browser "system error. I waqs unalbe to determine 
> your identity."

Read the README, it has a section about CGI.

Install Apache with suexec enabled, set up a virtualhost for your dspam
cgis, run them as user dspam (add that user / group to your system).

 Here's a virtualhost definition as an example:

 <VirtualHost dspam.example.com>

     ServerAdmin root at example.com
     ServerName dspam.example.com
     DocumentRoot "/usr/local/vhosts/dspam"
     User dspam
     Group dspam

     UserDir /var/httpd/dspam

     ScriptAlias /dspam /usr/local/vhosts/dspam/dspam.cgi
     ScriptAlias /admin /usr/local/vhosts/dspam/admin.cgi

     PerlModule Apache::PerlRun
     <Location /dspam>
         SetHandler perl-script
         PerlHandler Apache::PerlRun
         PerlInitHandler Apache::Reload
         PerlSendHeader On
         Options +Includes +ExecCGI
          AllowOverride None
         AuthType Basic
         AuthName "DSPAM Login"
         AuthUserFile /usr/local/vhosts/dspam/conf/authpasswd.dspam
         <LIMIT GET POST HEAD>
             Require valid-user
         </LIMIT>
    </Location>

     <Location /admin>
         SetHandler perl-script
         PerlHandler Apache::PerlRun
         PerlInitHandler Apache::Reload
         PerlSendHeader On
         Options +Includes +ExecCGI
         AllowOverride None
         AuthType Basic
         AuthName "DSPAM Admin"
         AuthUserFile /usr/local/vhosts/conf/authpasswd.dspam
         <LIMIT GET POST HEAD>
             Require valid-user
         </LIMIT>
     </Location>

     <Directory "/usr/local/vhosts/dspam">
         Options +Indexes +Includes +ExecCGI
     </Directory>

 </VirtualHost>


-- 
IOnut
Unregistered ;) FreeBSD "user"




More information about the freebsd-ports mailing list