# Definitive guide to FAMP installation



## balanga (Aug 29, 2014)

There seem to be numerous guides to getting a FAMP server up and running, yet they all seem to have various differences, maybe related to differing versions, maybe something else. Most are on someone's personal blog or somesuch and likely not maintained. It would be nice to have a section in the Handbook which showed how to do this.

This section on Apache http://www.freebsd.org/doc/handbook/network-apache.html looks useful but there is no mention of suppressing 
	
	



```
'../sbin/httpd -D NOHTTPACCEPT'
```
 in the error log, as mentioned here https://forums.freebsd.org/viewtopic.php?f=43&t=47803#p267032, but I don't know if that is important.

A post in the PC-BSD forum http://forums.pcbsd.org/showthread.php?t=21230 seems to be something like what I'd like to see in the Handbook, but ideally it would be great to be able to do something like 'pkg install FAMP'


----------



## usdmatt (Aug 29, 2014)

I'd say there are many versions of the install procedure, with slight differences, because there are a lot of ways you can configure and install Apache. There's also different ways of installing PHP and of configuring Apache & PHP to talk to each other. Everyone has different ideas/requirements on which is the best way. 

Personally I think the handbook covers everything I would expect it to cover. It explains a bit about Apache installation and configuration, as well as detailed information on installing and managing ports. What ports are installed and how they are configured is largely up to the user. It would possibly be nice to just be able to `pkg install apache-mysql-php`, but who would decide on the exact configure options used in that package? The advice for serious users would most likely be to set up their own package server with poudriere and create their own packages.

I expect there is at least one half decent install guide in the forum Howto section.

Regarding the -D NOHTTPACCEPT argument to `httpd`. This usually appears in the process list after a default Apache install. It is not an error, it just means Apache has been told not to use the http_accept kernel feature. The feature allows the kernel to read the entire HTTP request, and then pass that in full to Apache, rather than Apache reading the request line by line. This gives slightly less overhead when receiving requests. Obviously this feature isn't loaded by default as a large number of FreeBSD users don't need it. You don't need to modify /boot/loader.conf to change this, just add the following to /etc/rc.conf. It will automatically load the relevant kernel modules when starting Apache.


```
apache22_http_accept_enable="YES"
```


----------

