51

Some interesting questions. I think you may be slightly misunderstanding how the "supercomputers" built with Raspberry Pis work. They do not function as an automatic load sharing system. They are designed for something called parallel programming, where a complex task is broken down into pieces that can be performed simultaneously. The main Pi in the cluster ...


22

On Debian (the operating system Raspbian is based on) and Raspbian the config file is apache2.conf (not httpd.conf) and it should be in /etc/apache2.


18

There is a cool way of getting your public IP on Raspberry PI. curl icanhazip.com As lenik suggested, you need to forward port 80 from router to your Raspberry PI in order to have public web server.


10

If your looking for a simple REST service for a windows universal app, take a look at this github project: https://github.com/tomkuijsten/restup There is also a nuget package for it: https://www.nuget.org/packages/Restup/ Disclaimer: I'm the owner and creator of restup


9

In order to get a web page to update itself, you need to communicate back to the server from the client without the user doing anything (and remember, web relations mean the server can't send the client anything until the client asks for it). There are a few different mechanisms you can use to do this:1 Java applets. Applets are great, but unfortunately a ...


8

As ppumkin pointed out the in comments, don't use IIS. You can definitely use nginx. Apache also works. Finally, don't discount the possibility of a simple node.js script to implement a server. Depending on what you want to do (dynamic content versus static), you may get even better performance than with nginx.


8

I struggled for some time with this exact same problem. I believe that I've solved it, though I have to be honest, I don't understand exactly why it works. The key was turning off debugging in Flask. I got a hint at doing it by the comments on this page Video Streaming with Flask if __name__ == "__main__": app.run(host='0.0.0.0', port=8000, debug=False) ...


8

There are many ways that you could do this, but the easiest is to change the port that pi-hole is using. Edit /etc/lighttpd/lighttpd.conf and change the line that says server.port = 80 to use some other port number such as 8080. Then restart LigHTTPD using sudo service lighttpd restart, and you will be able to access the pi-hole administrative interface at ...


8

This is another way to change its port and the benefit is that it won't get reset any time you reconfigure pi-hole or update it. Add server.port := 8000 or your desired port to /etc/lighttpd/external.conf then restart. Then restart lighttpd using sudo systemctl restart lighttpd, and you will be able to access the pi-hole administrative interface at http://...


8

This should be a comment, but its a bit long. While I've not (yet) tested out various webservers on my Pi, I have previously run a lot of testing on webservers running on x86 server hardware. What I know from there is: most people get confused about the difference between performance and capacity - you'll see lots of posts claiming nginx is faster than (...


7

Information regarding system requirements for JIRA in a self hosted environment can be found at https://confluence.atlassian.com/display/JIRA/JIRA+Requirements JIRA Server Hardware Recommendation for Production The hardware required to run JIRA in production depends on a number of different JIRA configurations (eg. projects, issues, custom fields, ...


7

Try sudo apt-get --purge remove apache2 and then sudo apt-get autoremove. I had that same thing with emacs due to it installing other dependencies. emacs would still be there after --purge remove. Autoremove helped removing the dependencies which were installed with emacs.


7

To stop a service doesn't prevent the deamon to start the service on boot. For this you should deactivate the service to come up on all run levels A simple command for this on raspbian is update-rc.d apache2 disable If you later want the webserver starts again on default just type update-rc.d apache2 enable' With the comand sudo /etc/init.d/apache2 start ...


6

The basic issue is to circumvent any window manager, etc., that runs by default after you start X. If you use a display manager (this provides a graphical login screen) you should be able to do keep using it. In any case, create a file in your home directory called .Xclients (with the leading dot) that looks like this: #!/bin/sh lxterminal I'm using ...


6

This answer is not specific to the raspberry pi, but is general advice for remote administered servers. ssh. Using secure shell is almost as good as being there. serial console and out of band administration: if you screw up your network interface having a second way to login is a lifesaver. a simple way would be to have a Identical backup machine running ...


6

external address of your pi is the same as the external address of your router. please use your browser to access whatismyip.com to find out the exact value. btw, other people would not be able to access your pi, unless you configure your router to forward requests to the port 80 to your pi address.


6

JIRA will run with a 6-8 second load time on a Raspberry Pi 2 Model B. This is probably too slow for most people and, as such, I was only loading JIRA to see if it could actually be done. Also, the times are on a fresh install. I'm not sure what would happen when you started filling up the database, but I am definitely sure that it would slow to a painful ...


6

when raspberry pi 3 handles 10 Thousand connection Very, very unlikely. If each connection were generating 1 KB/s of traffic, that's 10 MB/s, which is just within the 12 MB/s theoretical upper limit of the 100 Mbps ethernet NIC. But I don't see how a 4 x 1.2 Ghz processor is going to be able to do much with that volume of information, besides maybe turn it ...


5

I'd actually go with Lighttpd rather than Apache on the Pi as it's lighter, and then I'd use a RT5370 WiFI USB dongle to start an access point rather than use Ad-Hoc as Ad-Hoc can have issues with some devices. You'll need to install hostapd and lighttpd Configure a static IP address for wlan0 Configure hostapd accordingly, I have some instructions on ...


5

If you already have a Python backend, I would recommend, for simplicities sake, stick with Python for the frontend so you can use the already existing codebase. There are so many Python Web-Frameworks out there and it's pretty all about how you like to do things. There are small frameworks like Flask, that are simplistic and minimalistic, which means you ...


5

You can either use iptables (which should be preinstalled on most Linux distributions) to do actual port forwarding (i.e. make rpi2's webserver accessible via http://rpi1:2000/ or some other port of your choice) or use the webserver on rpi1 as a reverse proxy to make rpi2 accessible via a (virtual) directory like http://rpi1/rpi2/. The configuration ...


5

There are a few out there. The one that I like is by NeonHorizon (Daniel Bull) and is called BerryIO. You can download it from GitHub.


5

It depends on your website and you should look for the size of that and its content. However, after the first model raspberry pi, it would be possible to run your website on a raspberry pi. Because the RAM capacity is reasonable and there would be no concentration about that. It's all about your internet capacity and your storage. If you intended to use ...


4

There likely is no problem, this is probably what you're paying for. I have a colocated pi serving webpages. As this is hosted in a data center with proper network I don't have this issue. If you're hosting something via your ISP and not a hosting/colo copmany you're not being realistic in your comparisons. Just because the NIC on the pi is 100Mbps does ...


4

It's not clear from your question whether the C program is intended to act as the CGI executable or not. However, if it is, you haven't fulfilled the CGI interface. A CGI executable must output (via stdout) a properly formatted HTTP response. There are various C libraries for helping with CGI, although it is not necessary that you use one. CGI passes ...


4

For the server, it makes sense to obtain the hostname via host = socket.gethostname() But how should the client know to whom to connect if you use the same command there? In the client host = socket.gethostname() print (host) prints the name of the client, not the host, isn't it? Here, you might want to give the hostname of the server explicitly. ...


4

You can put the debs up on a server on Ubuntu, but you won't be able to install them without first using something like the following from a terminal. wget servername/name.deb Then you can sudo dpkg -i name.deb Another option though would be to setup Ubuntu as an NFS server and use the Pi as a client. Then you can set up /etc/fstab to auto mount the ...


4

Also check out Embedded HTTP and WebSocket Server for UWP/.NET 4.5 https://www.nuget.org/packages/IotWeb/ (or on github)


4

Will I need to have a Python script You do not need python, you just need something with a module that wraps one or more of the following C libraries: pigpio wiringPi libbcm2835 All of which provide PWM for at least the hardware driven pin(s). Python for has wrappers for all three. PHP has one for wiringPi and may have ones for the others. However, ...


4

You're obviously running out of memory. Without knowing what exactly you're running on your system it's hard to advise, but check out two main suggestions: 1. Configure your web server. Go though /etc/nginx/nginx.conf and reduce settings which could use RAM (number of simultaneous connections, buffer sizes, etc.) If you're using web scripts (PHP and friends)...


Only top voted, non community-wiki answers of a minimum length are eligible