Étiquette : apache

17 août 2017 /

Installation

sudo yum update -y
sudo yum install httpd -y
sudo yum install perl perl-CGI -y
sudo systemctl start httpd.service
sudo systemctl enable httpd.service

Création d’un fichier de test CGI

Pour cela on va créer un répertoire de test:

mkdir /var/www/test_cgi
vi /var/www/test_cgi/hello.cgi

Et on y ajoute cela:

#!/usr/bin/perl
print "Content-type: text/html\n\n"; # Obligatoire
print "<h2>Hello world!</h2>";

Chargement du module mod_cgi.so dans Apache

On peux vérifier les modules présent dans la configuration principale d’Apache:

grep -n "LoadModule" /etc/httpd/conf/httpd.conf

Si il n’est pas présent, on va l’ajouter, pour cela on va localiser le module:

find /etc/httpd/modules/ -iname "*cgi*"

Cela devrait nous retourner:

/etc/httpd/modules/mod_cgi.so

Une fois trouvé, on ajoute cette ligne au fichier de configuration d’apache:

LoadModule cgi_module modules/mod_cgi.so

Particularité sur Ubuntu pour activer le module cgi:

sudo a2enmod cgi
sudo service apache2 restart

Déclaration du répertoire du script test dans httpd.conf

vi /etc/httpd/conf/httpd.conf

Puis on y ajoute ça:

<Directory "var/www/test_cgi">
Options +ExecCGI
AddHandler cgi-script .cgi .pl
</Directory>

On modifie également cette ligne comme ceci:

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

qui devient:

#ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
ScriptAlias /test_cgi/ "/var/www/test_cgi/"

Attribution des droits

chmod 755 hello.cgi

On redémarre Apache:

sudo systemctl restart httpd.service

On peux maintenant tester le script à cette adresse:

http://@IP/hello.cgi

7 mars 2016 /

Solr (prononcé « solar ») est une plateforme logicielle de moteur de recherche s’appuyant sur la bibliothèque de recherche Lucene, créée par la Fondation Apache et distribuée et conçue sous licence libre.

Solr utilise le langage Java et est exécuté par un conteneur de servlets, comme Tomcat. Il communique avec le client à l’aide d’une interface de programmation en XML et JSON, généralement via le protocole HTTP.

Récupérer l’URL des binaires à cette adresse:

http://lucene.apache.org/solr/mirrors-solr-latest-redir.html

Téléchargement et extraction des binaires

wget http://apache.crihan.fr/dist/lucene/solr/5.4.0/solr-5.4.0.tgz
tar -xzvf solr-5.4.0.tgz

Installation des binaires (lien symbolique, utilisateur solr, service, etc..)

cd solr-5.4.0/bin
./install_solr_service.sh /opt/solr-5.4.0.tgz
chkconfig --add solr
service solr status

Création d’un CORE SolR (ici nommé pocefl):

/opt/solr/bin/solr create -c pocefl -d basic_configs

Si cela fonctionne, vous devriez voir apparaitre dans menu déroulant « CORE Selector » afficher l’entrée « pocefl »:

 

solr

18 février 2016 /

Pour une installation dans /opt :

cd /opt/

On récupère la dernière version des binaires a cette adresse:
http://activemq.apache.org/download.html

Puis, on télécharge et on décompresse les binaires pour ActiveMQ Server:

wget http://apache.crihan.fr/dist/activemq/5.13.0/apache-activemq-5.13.0-bin.tar.gz
tar xzf apache-activemq-5.13.0-bin.tar.gz
rm -f apache-activemq-5.13.0-bin.tar.gz
useradd activemq
chown -R activemq /opt/apache-activemq-5.13.0/

Création du lien symbolique /opt/activemq:

ln -s apache-activemq-5.13.0/ activemq

Test de l’exécutable /opt/activemq/bin/activemq (port d’écoute 61616) :

cd /opt/activemq
./bin/activemq start
netstat -paunt | grep 61616

On va créer le script pour démarrer ActiveMQ:

vi /home/activemq/activemq-start.sh

On y place le texte suivant:

#!/bin/bash
echo Lancement de ActiveMQ....
sh /opt/activemq/bin/activemq start

On va créer le script pour arreter ActiveMQ:

vi /home/activemq/activemq-stop.sh

On y place le texte suivant:
#!/bin/bash
echo Arret de ActiveMQ....
sh /opt/activemq/bin/activemq stop

On créer maintenant le script pour gérer le service:

vi /etc/init.d/activemq

On y place le texte suivant:
#!/bin/bash
#
# activemq Starts ActiveMQ.
#
# chkconfig: 345 88 12
# description: Service pour ActiveMQ.
### BEGIN INIT INFO
# Provides: $activemq
### END INIT INFO
# Source function library.
. /etc/init.d/functions
[ -f /home/activemq/activemq-start.sh ] || exit 0
[ -f /home/activemq/activemq-stop.sh ] || exit 0
RETVAL=0
umask 077
start() {
echo -n $"Starting ActiveMQ: "
daemon su -c /home/activemq/activemq-start.sh activemq
echo
return $RETVAL
}
stop() {
echo -n $"Shutting down ActiveMQ: "
daemon su -c /home/activemq/activemq-stop.sh activemq
echo
return $RETVAL
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit $?

On rend les scripts exécutable:

chmod +x /etc/init.d/activemq
chmod +x /home/activemq/activemq-start.sh
chmod +x /home/activemq/activemq-stop.sh

Puis on ajoute et on active le service:

chkconfig --add activemq
chkconfig activemq on

Il ne nous reste plus qu’a tester le bon fonctionnement du service:

/etc/init.d/activemq start
/etc/init.d/activemq stop
service activemq start

3 novembre 2015 /

Voici une petite commande pour débugger un serveur Apache. Elle fait un strace sur tous les processus Apache qui tournent sur la machine. Vous pourrez facilement identifier les nœuds d’étranglement avant une mise en production, ou détecter une procédure qui bloque.

Pour une distribution RPM :

ps awux | grep sbin/httpd | awk '{print"-p " $2}' | xargs strace -f

Pour une distribution Debian, (« apache » au lieu de « httpd »):

ps awux | grep sbin/apache | awk '{print"-p " $2}' | xargs strace -f

 

13 juin 2015 /

Voici un moyen d’identifier le nombre de connexion active sur un serveur web.
Si le serveur est à l’écoute sur le port 80, vous pouvez vérifier le nombre de connexion à ce port avec la commande Netstats.

Pour lister et compter les connections sur ce port:

netstat -nt | grep :80 | grep ESTABLISHED | wc -l

Pour regarder sur les port 80 et 443:

netstat -nt | egrep ":(80|443)"| grep ESTABLISHED | wc -l

Ou encore en filtrant sur l’utilisateur Apache:

lsof -i|grep "apache"| grep "ESTABLISHED" | wc -l