Starting httpd: (98)Address already in use: make_sock: could not bind to address [::]:80
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
For resolving this issue grep list of open files and kill that file
[root@]# lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
perl 7448 apache 4u IPv6 33113387 TCP *:http (LISTEN)
[root@]# kill -9 7448
[root@]# /etc/init.d/httpd start
Starting httpd: [ OK ]
Nginx is a popular lightweight server for those who do not need the bulk and extra services that Apache may offer.
This article will look at installing Nginx from source on a CentOS slice.
At the time of writing, the latest stable version of Nginx is 0.7.65. You can check the latest versions and change logs at the main nginx site.
Building from source will allow you to have the latest available versions of Nginx. However, keep in mind that security updates will not be applied automatically.
As we are not using the package manager to install nginx, we need to take care of some dependencies.
Not many are needed and include pcre-devel zlib-devel and openssl-devel packages.
sudo yum install pcre-devel zlib-devel openssl-devel
Now we can download the source code.
Create a ‘sources’ directory (you can download it anywhere you want to):
Now move into the folder:
And then download the source code:
Unpack the downloaded tar file and move into the newly created directory:
There are quite a few compile time options that are available to use.
Have a look at the Install Options page of the Nginx wiki for full details.
We’re going to use just two options to customize the install. The first of which is:
By default, nginx will be installed in /usr/local/nginx which, although a good place, does mean the main Nginx binary will be found in /usr/local/nginx/sbin/nginx.
Not a location we are likely to find in our default search paths. So instead of adding new directories to our path (which may cause errors later on) we simply define where to put the binary.
The second option is:
Probably self explanatory, but this will enable the SSL module to be compiled so we can parse https requests.
Let’s go ahead and compile Nginx using those two options:
./configure --sbin-path=/usr/local/sbin --with-http_ssl_module
There will be a nice summary at the end of the compile which includes such items as:
... nginx path prefix: "/usr/local/nginx" nginx binary file: "/usr/local/sbin" nginx configuration file: "/usr/local/nginx/conf/nginx.conf" ...
Keep a note of the output as it does contain some useful paths and locations for various files.
Ok, let’s go ahead and ‘make’ and then ‘make install’:
make ... sudo make install For more info(continue reading...)