X
wikiHow is a “wiki,” similar to Wikipedia, which means that many of our articles are co-written by multiple authors. To create this article, 48 people, some anonymous, worked to edit and improve it over time.
This article has been viewed 762,721 times.
Learn more...
If you are looking for a way to make a cheap web server, primarily to be used as a testing environment or to store files, then the Raspberry Pi is perfect for you. What is a Raspberry Pi? It is an inexpensive mini computer, perfect for basic functions. This guide will show you how to take a new Raspberry Pi and turn it in to a web server. Please note that for this article, we will be working in Windows.
Steps
Part 1
Part 1 of 7:
Installing the Operating System
-
1Obtain a copy of the Raspberry Pi OS (Operating System) from the link in the sources section. There are a few different distributions available, but for this article, we will be using the "Raspbian" version.
-
2Extract the image to the SD card. To do this, we need a tool called the Win32 Disc Imager. A link for this is also available in the sources section. Now open the tool, navigate to the drive letter that your SD card is in, select the location of the Raspberry Pi OS image, and select burn. Wait for it to finish.Advertisement
-
3Open the SD card in Windows Explorer. Just create a file with the name ssh. This is a security update introduced since Raspbian Jessie.
-
4Eject the SD card, and place it into your Raspberry Pi, then plug in the rest of the cords, being sure to plug in the mini USB last.
-
5Log in once the operating system loads up. The default username is "pi", and the default password is "raspberry". Newer versions of Raspbian have auto-login enabled by default.
-
6Start by changing the password. From the command line type:
sudo passwd pi.
-
7You can also change your password by typing sudo raspi-config and selecting Change User Password or going to the System Configuration.
-
8Enter your new password and then confirm it. Please note, the cursor will not move when typing passwords but you are entering text.
Advertisement
Part 2
Part 2 of 7:
Updating Software
-
1Get started with updates. Because you are running a fresh version of Debian, you will need to do some housecleaning, updating, and installing. First, we are going to update the clock, update our sources, then upgrade any pre-installed packages. Type the following at the command line (press return/enter after each line):
sudo dpkg-reconfigure tzdata sudo apt-get update sudo apt-get upgrade
-
2Set the date and time. From the command line type (replace parts as necessary):
sudo date --set="30 December 2013 10:00:00"
Advertisement
Part 4
Part 4 of 7:
Configuring SSH
-
1Set up SSH so that we can do everything else from a different computer. To do this, first note the IP address of the Raspberry Pi
- You should see something like this:
- What appears is the IP address of your Raspberry Pi.
hostname -I
192.168.1.17
-
2Enable SSH and reboot (press return/enter after each line):
After noting the inet addr use: sudo /etc/init.d/ssh start for every time you boot up the pi. Hint: If an error occurs, use the command below, and then the command up above. sudo apt-get install ssh Then, restart your pi: sudo shutdown -r now
-
3Unplug the cords for your USB keyboard and your monitor. These are no longer necessary, as everything else will be done over SSH.
-
4Download an SSH client like PuTTy (www.putty.org) which can be downloaded for free from Google and connect to the IP address of your Raspberry Pi logging in with the username "pi" and the password you set earlier.
Advertisement
Part 5
Part 5 of 7:
Installing the Web Server
-
1Install Apache and PHP. To do this, execute the following commands:
sudo apt-get install apache2 php5 libapache2-mod-php5
-
2Restart the service:
sudo service apache2 restart
ORsudo /etc/init.d/apache2 restart
-
3Enter the I.P. address of your Raspberry Pi into your web browser. You should see a simple page that says "It Works!"
Advertisement
Part 7
Part 7 of 7:
Setting Up FTP
-
1Install FTP to allow transferring files to and from your Raspberry Pi.
-
2Take ownership of the web root:
sudo chown -R pi /var/www
-
3Install vsftpd:
sudo apt-get install vsftpd
-
4Edit your vsftpd.conf file:
sudo nano /etc/vsftpd.conf
-
5Make the following changes:
- anonymous_enable=YES to anonymous_enable=NO
- Uncomment local_enable=YES and write_enable=YES by deleting the # symbol in front of each line
- then go to the bottom of the file and add force_dot_files=YES.
-
6Save and exit the file by pressing CTRL-O, CTRL-X.
-
7Restart vsftpd:
sudo service vsftpd restart
-
8Create a shortcut from the Pi user's home folder to /var/www:
ln -s /var/www/ ~/www
-
9You can now FTP using the Pi user and access the /var/www folder via a shortcut that should appear on login.
Advertisement
Community Q&A
-
QuestionMy Pi said PHP5 is no longer available. Should I update to 7.0?Community AnswerYes, you should.
-
QuestionHow do I create a shortcut from the user's home folder to a specific folder? And when asked to log in with filezilla, what do I put in the "host" field?Community AnswerAs the host, you would put the IP (internet protocol) address of the Raspberry Pi. As for the shortcut, type into the terminal: cd ln -s [LOCATION OF FOLDER] ~/[NAME OF SHORTCUT].
-
QuestionCan you give an example of doing step 9?Community AnswerAfter you've followed all the steps in the article go to a command line. In example - using Windows 10 - Press the Windows Key. Type "FTP". Type "open xxx.xxx.xxx.xxx" (Put your ip from the IFCONFIG you ran above, part 4, step 1). If all is OK you'll get: Connected to xxx.xxx.xxx.xxx - 220 (vsFTPd 3.0.2) (or something close). 200 Always in UTF8 mode. User (xxx.xxx.xxx.xxx:(non)): enter your login default is "pi". You should get: 331 Please specify the password. Password: enter your password, default is "raspberry". If the login and password are correct you will get: 230 Login successful ftp> type ls -- you'll see a directory list.
Advertisement
Things You'll Need
- Raspberry Pi (model B)
- Blank SD card that is at least four gigabytes
- Micro USB cable (for power)
- Network cable with access to the internet
- USB keyboard or SSH connection
References
- http://www.raspberrypi.org/downloads - Raspberry Pi OS download
- https://launchpad.net/win32-image-writer - Win32 Disc Imager download
About This Article
Advertisement