W Ubuntu 16.04 i wyższym instalujemy następujące pakiety:
sudo apt-get install apache2 mysql-server php libapache2-mod-php php-mcrypt php-mysql php-mbstring
sudo apt-get install libcurl3-dev php-curl php-gd php-sqlite3
W Ubuntu 15.10 i niższym instalujemy następujące pakiety:
sudo apt-get install apache2 php5-mysql php5-sqlite libapache2-mod-php5 mysql-server
sudo apt-get install curl libcurl3 libcurl3-dev php5-curl php5-mcrypt php5-gd
Konfigurujemy Apache2, plik: /etc/php5/apache2/php.ini
Ustawić display_errors=On
Dodać wpisy lub upewnić się, że już są:
extension=mysql.so
extension=mysqli.so
extension=curl.so
Włączyć modrewrite: sudo a2enmod rewrite
Sprawdzić czy włączone: apache2ctl -M
Dodać obsługę htaccess: Edytować /etc/apache2/sites-available/default i zmienić wszystkie wystąpienia:
AllowOverride None na AllowOverride All
Zrestartować apacha: sudo service apache2 restart
Najpierw utwórz katalog, w którym strona ma się znajdować, np:
sudo mkdir /var/www/mysite
Utwórz plik konfiguracyjny mysite w katalogu /etc/apache2/sites-available
<VirtualHost *:80>
DocumentRoot /var/www/mysite
ServerName local.mysite
DocumentRoot /var/www/mysite
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/mysite>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride All
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Do pliku /etc/hosts dodaj linijkę:
::1 local.mysite
Włącz dostępność nowej strony w Apachu:
sudo a2ensite mysite
Zrestartuj Apacha, żeby załadował nową stronę:
sudo service apache2 restart
Od tej chwili pod adresem local.mysite w przeglądarce będzie dostępna nasza strona.