I just got my Raspberry Pi a few days ago and decided it would be fun to try to make a mini-web server out of it. I started by updating the machine using "apt-get update && apt-get upgrade" and then followed by installing the nginx web server, php and mysql via apt-get.
I then edited the "default" config file for nginx in "etc/nginx/sites-available", here's the relevant part of the file:
...
server {
listen 80;
root /usr/share/nginx/www;
index index.php index.html index.htm;
server_name localhost hedgehodg.com www.hedgehodg.com;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ /index.html;
# Uncomment to enable naxsi on this location
# include /etc/nginx/naxsi.rules
}
location /doc/ {
alias /usr/share/doc/;
autoindex on;
allow 127.0.0.1;
allow ::1;
deny all;
}
# Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
#location /RequestDenied {
# proxy_pass http://127.0.0.1:8080;
#}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
# With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}
}
I restarted nginx, and found that I could access the site through both my domain (hedgehodg.com) and the private ip (192.168.2.23) with no problems, but when I attempted to access it from outside the LAN the connection timed out. So I opened up "etc/network/interfaces" in emacs and changed it to the following:
auto lo
iface lo inet loopback
iface eth0 inet static
address 192.168.2.23
netmask 255.255.255.0
gateway 192.168.2.1
nameserver 192.168.2.1
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
I later changed the the Pi's private IP type to static (on the router) so that it doesn't change on my local network, and opened port 80 forwarding to my Pi. When this didn't change anything, I modified a setting on the router so that the Pi is not protected by the the router's NAT firewall. My problem is: I can't access my web server from anywhere but the LAN on which the Pi is located - I'd like to access it from the internet like you would be able to with any other website.