J'aime construire une démo d'un site web fonctionnant sur un tableau d'évaluation d'ATMEL. Pour ce tableau d'évaluation, je construis un Linux en utilisant Yocto. Pour la gestion du site Web, le serveur web Apache doit être utilisé.Comment construire un site web simple dans un Linux embarqué en utilisant Apache et Yocto?
J'ai obtenu la compilation apache2 et installé, ainsi que mon site web simple. Mais j'ai échoué à mettre en place la configuration apache droite.
Mon système possède deux ports Ethernet eth0 et eth1. Eth0 est configuré sur IP 1.2.3.4 et eth1 sur dchp. L'index.html devrait être accessible via eth0. Peut-être qu'il est possible d'avoir un littéral comme "mywebsite" pour y accéder. Les fichiers du site Web sont placés dans le répertoire personnalisé:/var/www/html/
Réel Je copie une configuration d'hôte virtuel (myweb.conf) dans/etc/apache2/sites-available /. Il ressemble à:
# Ensure that Apache listens on port 80
Listen 80
<VirtualHost *:80>
ServerName mywebsite
ServerAdmin [email protected]
DocumentRoot /var/www/html/
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
</VirtualHost>
La recette de yocto décompresse index.html qui est en myweb.zip et installe la configuration d'hôte virtuel. Le code ressemble à:
SUMMARY = "myweb"
SECTION = "test"
LICENSE = "CLOSED"
SRC_URI = "file://myweb.zip \
file://myweb.conf \
"
DEPENDS = "apache2"
S = "${WORKDIR}"
WWWdestPATH = "/var/www/html/"
do_install() {
install -d ${D}${WWWdestPATH}
cp -r ${S}/myweb/* ${D}${WWWdestPATH}
install -d ${D}/etc/apache2/sites-available/
cp ${S}/myweb.conf ${D}/etc/apache2/sites-available/myweb.conf
}
FILES_${PN} += "${WWWdestPATH}*"
FILES_${PN} += "/etc/apache2/sites-available/*"
Des idées comment modifier les fichiers pour démarrer le site?
@ 1.) Cela fonctionne mais il renvoie le std. site web d'apache "ça marche". Penser dans ma configuration est une erreur. Peut-être pas chez les hôtes virtuels? –
Là où deux erreurs: 1er: la recette apache2 openembeeded apporte un propre fichier de configuration, qui recherche /etc/apache2/conf.d/ pour la configuration de l'hôte virtuel 2ème: dans la configuration de l'hôte est une erreur. Le répertoire/var/log/apache2/n'existe pas Lors de la saisie de www.1.2.3.4/mywebsite, il est toujours impossible d'appeler /var/www/html/index.html. Des idées? –
Je suis presque là. En entrant www.1.2.3.4/index.html je suis sur mon site web. En entrant dans www.1.2.3.4, j'ai "Ça marche!". Comment surmonter cela? –