Författare:
Per Stenebo
Skapad:
2012-01-26 14:17:07
Ändrad:
2024-03-26 18:49:31
sv

Apache

| Server guide -apache | HowTophpmyadmin+ssl+auth | manpages |
| How to host multiple websites on one VPS |
How To Serve Django Applications with Apache and mod_wsgi on Ubuntu 14.04 |

Kolla version: apache2 -v, alternativt med php i variablen $_SERVER['SERVER_SOFTWARE']

Loggmapp (standard): /var/log/apache2/

Felsök konfiguration: sudo apache2ctl configtest

Global konfigurationsfil (Debian/Ubuntu): /etc/apache2/apache2.conf

 

Dölj versionsinfo mm

Lägg till i global konfigurationsfil:

ServerTokens Prod
ServerSignature Off

 

Standardsajt på Ubuntu

Konfig: /etc/apache2/sites-available/default
Innehåll: /var/www
Adress: http://minserver

Användare för Apache (i Ubuntu): www-data

Ändra standardsajt från /var/www till /opt/www/primary

sudo nano /etc/apache2/sites-available/default

Ändra DocumentRoot /var/www
till DocumentRoot /opt/www/primary

 

Skapa ny lokal sajt

Skapa mapp för sajten:

mkdir -p /opt/www/nysajt

Skapa en testfil:

echo 'hello world!' >> /opt/www/nysajt/index.php

Skapa konfigurationsfil för sajten (fom version 2.4 krävs ändelsen .conf):

sudo nano /etc/apache2/sites-available/nysajt.conf

Lägg in texten (minimal), fom version 2.4 krävs även Require all granted:

# min nya sajt
Alias   /nysajt    /opt/www/nysajt
	lt directory /opt/www/nysajt gt
		Require all granted
	lt /directory gt

Ändra ägare till sajten:

sudo chown -R www-data:mek nysajt

Aktivera sajten genom att lägga in en symbolisk länk till filen i /etc/apache2/sites-enabled med verktyget a2ensite:

sudo a2ensite nysajt.conf

Avaktivera en sajt: sudo a2dissite nysajt.conf

Kolla konfig: sudo apache2ctl configtest 

Starta om apache:

sudo /etc/init.d/apache2 restart

sudo service apache2 reload (Debian Weezy / Ubuntu 14.04)

sudo systemctl restart apache2 (Debian Jessie / Ubuntu 16.04)

Öppna webbläsaren och gå till http://minserver/nysajt/index.php

 

php

Lokalisera filen php.ini

locate php.ini eller sudo find /etc -name 'php.ini'

Svar:

/etc/php/7.3/cli/php.ini
/etc/php/7.3/apache2/php.ini

Vilken av dessa filer som används av apache kan utläsas av phpinfo().

Redigera php.ini

sudo nano /etc/php/7.3/apache2/php.ini

Sök text i nano: ^w (ctrl+w)

Vanliga ändringar i php.ini:

; display_errors ändras till display_errors = On

upload_max_filesize = 2M ändras till upload_max_filesize = 8M

memory_limit = 256M

sudo systemctl restart apache2

 

Rättigheter

Mappar behöver ha 0770 för att vara läsbara.

Filer behöver vara 0660 för att vara skrivbara.

 

Fel

Call to undefined function json_encode()

Sedan Ubuntu 13.10 har json_encode() tagits bort pga licensproblem. Det kan installeras separat:

sudo apt-get install php5-json && sudo service apache2 reload

 

Letsencrypt

| letsencrypt home | letsencrypt github | certbot.eff.org: Manual mode | harryfinn: Manual install | Various config options |

 

Kommentarer till sidan Apache