At https://packages.raspberry-hosting.com/ we have provided for download the latest version of the nginx for Raspberry Pi.
There is also a init script. Packages will be updated regularly.
Installation:
1. Update/upgrade
root@raspberrypi:~# apt-get update && apt-get -y upgrade
2. Install additional packages:
root@raspberrypi:~# apt-get install libpq5 libxslt1.1 aspell mcrypt libltdl7 libgmp10 curl libicu48 libgomp1 libpng12-0 libjpeg8 libfontconfig1 libgd2-xpm
2. Add BEST-HOSTING repository with all packages: (Read more: FREE Raspbian repository )
root@haproxy01:~# apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0x908332071dd2e32e root@haproxy01:~# cat > /etc/apt/sources.list.d/best-hosting.list deb http://deb.best-hosting.cz/debian/ raspberry main root@haproxy01:~# apt-get update root@haproxy01:~# apt-cache search bh-
3. Install the NGINX
stable version: root@raspberrypi:~# wget https://packages.raspberry-hosting.com/nginx-raspberry-pi/nginx_1.6.2-1_armhf.deb mainline version: root@raspberrypi:~# wget https://packages.raspberry-hosting.com/nginx-raspberry-pi/nginx_1.7.7-1_armhf.deb install: root@raspberrypi:~# dpkg -i ./nginx_1.6.2-1_armhf.deb
stable version: root@raspberrypi:~# apt-get install bh-nginx-stable or mainline version: root@raspberrypi:~# apt-get install bh-nginx-mline
4. Download nginx init script in /etc/init.d/ and add it permissions to execute:
It's not necessary
root@raspberrypi:~# wget https://packages.raspberry-hosting.com/nginx-raspberry-pi/etc/init.d/nginx -O /etc/init.d/nginx root@raspberrypi:~# chmod +x /etc/init.d/nginx
5. Allowing execution nginx even after reboot:
It's not necessary
root@raspberrypi:~# update-rc.d nginx defaults
6. Create the following folders:
It's not necessary
root@raspberrypi:~# mkdir /etc/nginx/cache root@raspberrypi:~# mkdir /etc/nginx/conf.d root@raspberrypi:~# mkdir /etc/nginx/sites-available root@raspberrypi:~# mkdir /etc/nginx/sites-enabled
7. Basic settings /etc/nginx/nginx.conf :
user www-data; worker_processes 1; error_log /var/log/nginx/error.log error; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] ' '"$request" $status $bytes_sent ' '"$http_referer" "$http_user_agent" ' '"$gzip_ratio"'; access_log /var/log/nginx/access.log main; # geoip_country /usr/local/share/GeoIP/GeoIP.dat; # geoip_city /usr/local/share/GeoIP/GeoLiteCity.dat; # upload_progress uploads 1m; # upload_progress proxied 1m; open_file_cache max=5000 inactive=20s; open_file_cache_valid 30s; open_file_cache_min_uses 2; open_file_cache_errors on; set_real_ip_from 0.0.0.0/32; real_ip_header X-Forwarded-For; add_header X-XSS-Protection '1; mode=block'; add_header X-Content-Options nosniff; gzip on; gzip_static on; gzip_disable "msie6"; gzip_http_version 1.1; gzip_vary on; gzip_comp_level 4; gzip_proxied any; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript text/x-js; gzip_buffers 16 8k; client_max_body_size 30M; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 60; types_hash_max_size 2048; server_tokens off; ignore_invalid_headers on; fastcgi_buffer_size 128k; fastcgi_buffers 256 16k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_read_timeout 240; fastcgi_cache_path /etc/nginx/cache/ levels=1:2 keys_zone=microcache:10m max_size=1000m inactive=60m; fastcgi_cache microcache; fastcgi_cache_key $scheme$request_method$host$request_uri; fastcgi_cache_valid 10m; fastcgi_cache_lock off; fastcgi_cache_use_stale updating; index index.php index.html index.htm; include fastcgi_params; # limit_req_zone $binary_remote_addr zone=one:10m rate=50r/s; include /etc/nginx/sites-enabled/*.conf; }
8. Basic settings for /var/www/ :
server { listen 80; server_name your-domain-name-here.com; root /var/www; location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } location ~ \..*/.*\.php$ { return 403; } location ~ (^|/)\. { return 403; } location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { # SECURITY : Zero day Exploit Protection try_files $uri =404; # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/your-domain-name-here.com.sock; } }
9. Nginx and fastcgi_params files for download is here:
root@raspberrypi:~# wget https://packages.raspberry-hosting.com/nginx-raspberry-pi/etc/nginx/fastcgi_params -O /etc/nginx/fastcgi_params root@raspberrypi:~# wget https://packages.raspberry-hosting.com/nginx-raspberry-pi/etc/nginx/nginx.conf -O /etc/nginx/nginx.conf
root@raspberrypi:~# wget http://deb.best-hosting.cz/_scripts_/nginx/fastcgi_params -O /etc/nginx/fastcgi_params root@raspberrypi:~# wget http://deb.best-hosting.cz/_scripts_/nginx/nginx.conf -O /etc/nginx/nginx.conf
10. Install PHP-FPM and configure it how you need:
root@raspberrypi:~# apt-get install php5-fpm root@raspberrypi:~# nano /etc/php5/fpm/php-fpm.conf root@raspberrypi:~# nano /etc/php5/fpm/pool.d/www.conf (or your-domain-name-here.com.conf) simply as you need
11. Restart NGINX & PHP-FPM:
root@raspberrypi:~# /etc/init.d/php-fpm restart && /etc/init.d/nginx restart
Enjoy!
In case of an update package, be very careful and keep a back-up of all configuration files from /etc/nginx/ !
Comments
Jennifer replied on Permalink
It was an awesome experience for me to visit www.WebHostingGeeks.com and know about the cost-effective options for web hosting that are going to suit my needs.
Chris H. replied on Permalink
One of my friends used to say that it feels easy to visit the websites of your friends and speak about its looks, but it is equally tough to start your own website. Now, when I am in process of creating a website, I have come to realise that he was right. However, I was lucky enough to find http://godaddy-coupons.longest.com/godaddy-hosting-coupon.html and get lucrative discount for web hosting.