Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/04/2016, à 18:04

Fre3z69

Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Salutations à tous,

Voila, j'ai installer et Lamp et Xampp sur Ubuntu 14.04.4, mais...
Je n'arrive pas à l'utiliser, c'est à dire à faire démarrer MySql, et à accorder les droits aux différents services pour pouvoir y accéder.

Ensuite, je ne sais  pas comment l'utiliser, c'est à dire, créer des projets PHP dans le dossier, qui correspondrait à WWW sur Wamp.

J'ai suivit pas mal de tutos, mais j'ai pas compris, soit une différence de version, soit je m'y prends mal.

Quelqu’un aurait une façon d'installer l'un où l'autre, et de les paramétrer facilement, ou dans le pire des cas, quelqu’un aurait une solution pour faire tourner correctement Wamp avec Wine, que tous les services se mettent en route et soit fonctionnels?

Je vous remercie de votre aide!

Très cordialement!

Hors ligne

#2 Le 05/04/2016, à 07:23

hugo66000

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Bonjour
J'ai aussi le même problème, si tu veux accéder à /var/www il te faut une autorisation. Avant d'utiliser Ubuntu j'étais sur Mint et là pas de problème, tu ouvrais en tant que root, tu faisais ton mot de passe et c'était OK, tu pouvais mettre tes projet PHP dedans. Maintenant sur Ubuntu je suis bloqué, si pas de solution je retourne sur Mint
Je vais suivre cette conversation, j'espère comme toi une réponse
Salutation


PC: carte asus B150M-A D3 , processeur: intel ci5 6600k , + 8 Go memoire, Ubuntu 17-10 .

Hors ligne

#3 Le 05/04/2016, à 08:04

jplemoine

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

hugo66000 a écrit :

tu ouvrais en tant que root

Comment ? Pourquoi ? Tu dois pouvoir faire pareil (ou presque..) : je ne connais pas suffisamment Mint pour deviner la manipulation que tu faisais pour t'en donner une presque identique.

hugo66000 a écrit :

Maintenant sur Ubuntu je suis bloqué, si pas de solution je retourne sur Mint

Il y a des sites web qui tournent sous Ubuntu, donc le fait que tu sois bloqué ne dépend pas de la distribution mais de ta manière de faire qui doit être adaptée.

@Fre3z69 : Plutôt que de prendre un "truc tout fait", prends les éléments séparés... (ça permet de mettre à jour plus facilement)

Aux 2 : il faut mieux créer sa propre arborescence (/srv le plus souvent) que d'utiliser /var/www/...


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#4 Le 05/04/2016, à 10:28

pires57

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

@Fre3z69 :

Je n'arrive pas à l'utiliser, c'est à dire à faire démarrer MySql, et à accorder les droits aux différents services pour pouvoir y accéder.
Ensuite, je ne sais  pas comment l'utiliser, c'est à dire, créer des projets PHP dans le dossier, qui correspondrait à WWW sur Wamp

Par défaut sous ubuntu, le contenu de ton site web doit être stocké dans

/var/www/html/

mais je recommande plutôt de modifier la config d'apache et de créer dans

/srv/

un dossier nommé "www" dans lequel tu stockeras tes sites web.
Avant même de t'occuper de la partie base de donnée, tu devrais faire en sorte de faire fonctionner PHP.
Si tu utilises des tutos, donnes les liens mais la meilleur doc c'est la doc officiel d'apache.

@hugo 66000 :

hugo66000 a écrit :

tu ouvrais en tant que root

Bin voyons, un coup de root par ici, un coup de chmod 777 par là ... Ah oui c'est sur ton site s'affichera mais niveau sécurité je te donne ... une bulle.

Pour commencer je ne recommande absolument pas de travailler dans

/var/www

, c'est peut être le répertoire par défaut mais si tu suis les normes (FHS dans notre cas) tu comprendras qu'un service se place dans /srv.
Maintenant si tu souhaites le laisser sur /var cela ne me pose pas de problème en soit mais il faudrait donner le retour d'un

ls -l 

histoire de voir les droits actuels sur le répertoire contenant tes sites web (contenu dans /var/www/)
La solution serait (pour toi) d'attribuer ce dossier à www-data (si ce n'est pas déjà le cas) et de t'ajouter à ce groupe.


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#5 Le 05/04/2016, à 11:15

mazarini

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Je préfère mettre mes sites en développements dans mon home avec un vhost par projet et mes tests dans /srv pour préparer la mise en ligne. J'utilise le fichier /etc/hosts pour déclarer les domaines locaux (domaine.com -> domaine.dev et domaine.test).
Pour les droits d'accès, j'utilise setfacl :

$ sudo setfacl -R -m u:www-data:rwX repertoire
$ sudo setfacl -dR -m u:www-data:rwX repertoire

répertoire : répertoire où apache à besoin d'écrire


S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)

Hors ligne

#6 Le 05/04/2016, à 11:17

kholo

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

bonjour,
je vais essayer de ne pas trop vous embrouiller avec mes histoires :
d'abord il existe UN tuto à suivre
https://doc.ubuntu-fr.org/lamp
et Un autre qu'il faut prendre juste derrière
https://doc.ubuntu-fr.org/tutoriel/lamp … de_travail
je l'avoue, c'est très chiant... très... très chiant même !

mais ça amène à avoir un dossier perso dont il suffit de faire des liens vers www
pour les mettre "en ligne"... local bien sûr wink
comme le dossier nous appartient, on peut à loisir bosser dessus sans avoir la contrainte du sudoer
ET comme tous les dossiers des sites sont ensemble et déportés c'est plus facile pour les sauvegardes
ou le remontage si on refait un système...

et pis c'est tout ! cool

Hors ligne

#7 Le 05/04/2016, à 11:37

pires57

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

@Mazarini,

Je me place bien évidement dans le cadre d'un serveur en production donc forcément aucune redirection vers /home
Si c'est pour du test, que tu a plusieurs utilisateurs habilités à faire cela tu peut utiliser les redirections (bien que maintenant j'ai plutôt tendance à utiliser docker pour ce genre d'environnement (avec un container par user ou projet en fonction de ce que l'on demande).


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#8 Le 05/04/2016, à 17:15

Fre3z69

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Salutations,

Merci à vous de vos conseils, je vais m'y atteler, je vais les suivre et suivre les tutos proposés.

Etant un utilisateur de WAMP, je vous avoue que cela me semblais plus simple, mais avec Linux, je sais qu'on peu avoir un super environnement de travail, donc je vais m'y atteler.

Je vous tiens informé de l'avancement.

Très très cordialement.

===============

Edit:

J'ai tester le tutoriel proposé par kholo, le hic:

Aucun accès à phpmyadmin, ensuite, j'aimerais utiliser un fichier php qui liste automatiquement tous les dossiers contenus dans le dossier souhaité "soit pour ma part le public", et pour finir, j'aimerais m'assurer que mes sites en php fonctionneront avec les méthodes choissis.

Je vous informe que j'ai installer les composants un à un, et non le lamp en entier, cela y joue t'il? Sachant que je vois bien mes deux dossier dans localhost, soit public et private.

Merci à vous.

Dernière modification par Fre3z69 (Le 05/04/2016, à 17:51)

Hors ligne

#9 Le 05/04/2016, à 18:51

kholo

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

j'ai repris le tutoriel LAMP et création des dossiers personnels et
il faut peut être adapter quelques trucs, mon réseau est sur 192.168.1.x
voici un condensé :

Installations

sudo apt-get install apache2 php5 mysql-server libapache2-mod-php5 php5-mysql

modifications des fichiers
une sauvegarde

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/000-default.conf.bak
sudo gedit /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
	ServerAdmin webmaster@localhost

	DocumentRoot /var/www
	<Directory />
		Options FollowSymLinks
		AllowOverride None
	</Directory>
<Directory /var/www/>
	ErrorDocument 403 "http://domain.tld/public"
	Options Indexes FollowSymLinks MultiViews
	AllowOverride None
	<RequireAny>
		Require ip 127.0.0.1
		Require host localhost
		Require ip 192.168.1
	</RequireAny>
</Directory>
## ZONE PUBLIQUE
Alias /public /media/www-dev/public
<Directory /media/www-dev/public>
	Options Indexes FollowSymLinks MultiViews
	AllowOverride All
	Require all granted
</Directory>

## ZONE PRIVEE
Alias /private /media/www-dev/private
<Directory /media/www-dev/private>
	ErrorDocument 403 "http://domain.tld/public"
	Options Indexes FollowSymLinks MultiViews
	AllowOverride All
	<RequireAny>
		Require ip 127.0.0.1
		Require ip 192.168.1
		Require host .w3.org
		Require host sandbox.paypal.com
	</RequireAny>
</Directory>
	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
	<Directory "/usr/lib/cgi-bin">
		AllowOverride None
		Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	</Directory>

	ErrorLog ${APACHE_LOG_DIR}/error.log

	# Possible values include: debug, info, notice, warn, error, crit,
	# alert, emerg.
	LogLevel warn

	CustomLog ${APACHE_LOG_DIR}/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

/etc/apache2/sites-available/default-ssl.conf

sudo cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-available/default-ssl.conf.bak
sudo gedit /etc/apache2/sites-available/default-ssl.conf
<IfModule mod_ssl.c>
	<VirtualHost _default_:443>
		ServerAdmin webmaster@localhost

		DocumentRoot /var/www/html

		# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
		# error, crit, alert, emerg.
		# It is also possible to configure the loglevel for particular
		# modules, e.g.
		#LogLevel info ssl:warn

		ErrorLog ${APACHE_LOG_DIR}/error.log
		CustomLog ${APACHE_LOG_DIR}/access.log combined

		# For most configuration files from conf-available/, which are
		# enabled or disabled at a global level, it is possible to
		# include a line for only one particular virtual host. For example the
		# following line enables the CGI configuration for this host only
		# after it has been globally disabled with "a2disconf".
		#Include conf-available/serve-cgi-bin.conf

		#   SSL Engine Switch:
		#   Enable/Disable SSL for this virtual host.
		SSLEngine on

		#   A self-signed (snakeoil) certificate can be created by installing
		#   the ssl-cert package. See
		#   /usr/share/doc/apache2/README.Debian.gz for more info.
		#   If both key and certificate are stored in the same file, only the
		#   SSLCertificateFile directive is needed.
		SSLCertificateFile	/etc/ssl/certs/ssl-cert-snakeoil.pem
		SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

		#   Server Certificate Chain:
		#   Point SSLCertificateChainFile at a file containing the
		#   concatenation of PEM encoded CA certificates which form the
		#   certificate chain for the server certificate. Alternatively
		#   the referenced file can be the same as SSLCertificateFile
		#   when the CA certificates are directly appended to the server
		#   certificate for convinience.
		#SSLCertificateChainFile /etc/apache2/ssl.crt/server-ca.crt

		#   Certificate Authority (CA):
		#   Set the CA certificate verification path where to find CA
		#   certificates for client authentication or alternatively one
		#   huge file containing all of them (file must be PEM encoded)
		#   Note: Inside SSLCACertificatePath you need hash symlinks
		#		 to point to the certificate files. Use the provided
		#		 Makefile to update the hash symlinks after changes.
		#SSLCACertificatePath /etc/ssl/certs/
		#SSLCACertificateFile /etc/apache2/ssl.crt/ca-bundle.crt

		#   Certificate Revocation Lists (CRL):
		#   Set the CA revocation path where to find CA CRLs for client
		#   authentication or alternatively one huge file containing all
		#   of them (file must be PEM encoded)
		#   Note: Inside SSLCARevocationPath you need hash symlinks
		#		 to point to the certificate files. Use the provided
		#		 Makefile to update the hash symlinks after changes.
		#SSLCARevocationPath /etc/apache2/ssl.crl/
		#SSLCARevocationFile /etc/apache2/ssl.crl/ca-bundle.crl

		#   Client Authentication (Type):
		#   Client certificate verification type and depth.  Types are
		#   none, optional, require and optional_no_ca.  Depth is a
		#   number which specifies how deeply to verify the certificate
		#   issuer chain before deciding the certificate is not valid.
		#SSLVerifyClient require
		#SSLVerifyDepth  10

		#   SSL Engine Options:
		#   Set various options for the SSL engine.
		#   o FakeBasicAuth:
		#	 Translate the client X.509 into a Basic Authorisation.  This means that
		#	 the standard Auth/DBMAuth methods can be used for access control.  The
		#	 user name is the `one line' version of the client's X.509 certificate.
		#	 Note that no password is obtained from the user. Every entry in the user
		#	 file needs this password: `xxj31ZMTZzkVA'.
		#   o ExportCertData:
		#	 This exports two additional environment variables: SSL_CLIENT_CERT and
		#	 SSL_SERVER_CERT. These contain the PEM-encoded certificates of the
		#	 server (always existing) and the client (only existing when client
		#	 authentication is used). This can be used to import the certificates
		#	 into CGI scripts.
		#   o StdEnvVars:
		#	 This exports the standard SSL/TLS related `SSL_*' environment variables.
		#	 Per default this exportation is switched off for performance reasons,
		#	 because the extraction step is an expensive operation and is usually
		#	 useless for serving static content. So one usually enables the
		#	 exportation for CGI and SSI requests only.
		#   o OptRenegotiate:
		#	 This enables optimized SSL connection renegotiation handling when SSL
		#	 directives are used in per-directory context.
		#SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
		<FilesMatch "\.(cgi|shtml|phtml|php)$">
				SSLOptions +StdEnvVars
		</FilesMatch>
		<Directory /usr/lib/cgi-bin>
				SSLOptions +StdEnvVars
		</Directory>

		#   SSL Protocol Adjustments:
		#   The safe and default but still SSL/TLS standard compliant shutdown
		#   approach is that mod_ssl sends the close notify alert but doesn't wait for
		#   the close notify alert from client. When you need a different shutdown
		#   approach you can use one of the following variables:
		#   o ssl-unclean-shutdown:
		#	 This forces an unclean shutdown when the connection is closed, i.e. no
		#	 SSL close notify alert is send or allowed to received.  This violates
		#	 the SSL/TLS standard but is needed for some brain-dead browsers. Use
		#	 this when you receive I/O errors because of the standard approach where
		#	 mod_ssl sends the close notify alert.
		#   o ssl-accurate-shutdown:
		#	 This forces an accurate shutdown when the connection is closed, i.e. a
		#	 SSL close notify alert is send and mod_ssl waits for the close notify
		#	 alert of the client. This is 100% SSL/TLS standard compliant, but in
		#	 practice often causes hanging connections with brain-dead browsers. Use
		#	 this only for browsers where you know that their SSL implementation
		#	 works correctly.
		#   Notice: Most problems of broken clients are also related to the HTTP
		#   keep-alive facility, so you usually additionally want to disable
		#   keep-alive for those clients, too. Use variable "nokeepalive" for this.
		#   Similarly, one has to force some clients to use HTTP/1.0 to workaround
		#   their broken HTTP/1.1 implementation. Use variables "downgrade-1.0" and
		#   "force-response-1.0" for this.
		BrowserMatch "MSIE [2-6]" \
				nokeepalive ssl-unclean-shutdown \
				downgrade-1.0 force-response-1.0
		# MSIE 7 and newer should be able to use keepalive
		BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown

	</VirtualHost>
</IfModule>

Création des Dossiers

sudo mkdir /media/www-dev
sudo mkdir /media/www-dev/public
sudo mkdir /media/www-dev/private
sudo chown -R $USER:users /media/www-dev

et
Attention : la variable '$USER' est une variable pour l'utilisateur en cours. si vous voulez affecter ces répertoires à un autre utilisateur, donnez le nom réel de l'utilisateur.
Le 'users' par contre est un nom de group (normalement déjà présent sur votre installation). Soit vous utilisez nom_user:nom_user, soit nom_user:users.
'users' étant souvent le group utilisé sur de l'hébergement mutualisé, ce qui vous permet de simuler votre hébergeur au plus près.

et
votre site se situe sous /media/votre_disque/vos_sites/votre_site, il vous faut exécuter :

sudo chown $USER:users /media/votre_disque
sudo chown $USER:users /media/votre_disque/vos_sites
sudo chown -R $USER:users /media/votre_disque/vos_sites/votre_site 

et
Ajout de liens symboliques

sudo ln -s /media/www-dev/public /var/www/html/public
sudo ln -s /media/www-dev/private /var/www/html/private

et
Il faudra également effacer le fichier index.html pour que cela prenne effet :

sudo mv /var/www/html/index.html /var/www/html/index-old.html

# redémarrage apache

sudo /etc/init.d/apache2 force-reload

Résolution du probleme : Erreur sur le localhost
* Restarting web server apache2 AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

sudo gedit /etc/hosts
sudo gedit /etc/hostname

vérifier dans les deux fichiers d'avoir <hostname> commun
possibilité de le changer par ces 2 fichiers
reboot préférable au reload de apache 2

Éditez en super utilisateur le fichier : /etc/hosts et remplacer les lignes :

127.0.0.1 localhost
127.0.1.1 <hostname>

par :

127.0.0.1 localhost <hostname>

A l'utilisation :
je crée un dossier dans mon dossier sites web (je l'ai appelé www).
ensuite je lance nautilus en root (je sais c'est pas bien mais c'est tellement facile !)
je crée un lien entre le nouveau dossier de mon nouveau site vers /media/www-dev/private
ensuite j'accède à mes site par mon IP local ou localhost (127.0.0.1)

Hors ligne

#10 Le 06/04/2016, à 04:42

Fre3z69

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Salut, merci à toi.

Tu pourrais m'expliquer en plus détailler ceci s'il te plait?

A l'utilisation :
je crée un dossier dans mon dossier sites web (je l'ai appelé www).
ensuite je lance nautilus en root (je sais c'est pas bien mais c'est tellement facile !)
je crée un lien entre le nouveau dossier de mon nouveau site vers /media/www-dev/private
ensuite j'accède à mes site par mon IP local ou localhost (127.0.0.1)

Merci à toi.

Bien cordialement.

Hors ligne

#11 Le 06/04/2016, à 07:37

jplemoine

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Je me suis déjà exprimer de nombreuses fois sur le sujet : le tuto de kholo n'a qu'un mérite : celui d'exister.
C'est, selon moi, un condensé de, même si ça fonctionne, ce qu'il ne faut pas faire....
- mettre des liens symboliques : pourquoi ne pas pointer directement vers le bon emplacement...
- modifier les fichier de configutation par défaut (à chaque mise à jour d'Apache, il faut refaire les modifs)
- créer le site sous /media au lieu de /serv
et je ne parle même pas de nautilus en root !!!


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#12 Le 06/04/2016, à 07:58

pires57

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Encore une fois regardes la documentation officiel d'apache !
https://httpd.apache.org/docs/2.4/fr/ho … _html.html
Ceci dit, pour une utilisation seule tu n'as pas besoin de créer des répertoires de travail ! ce genre de chose à été mis en place pour des serveurs multi développeur !


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#13 Le 06/04/2016, à 10:46

kholo

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Si j'ai mis ce tuto sur ce fil c'est justement pour l'éprouver
et enfin avoir une recette compréhensible du montage d'un serveur LAMP

Pour les liens
A la place de sudo nautilus faire

sudo mkdir /media/www-dev/private/MONSITE
sudo ln /dossier/ou/se/trouve/le/site/ /media/www-dev/private/MONSITE

ou vers private

sudo mkdir /media/www-dev/public/MONSITE
# sudo ln /dossier/ou/se/trouve/le/site/ /media/www-dev/public/MONSITE

Pour les MàJ, je suis en fonctionnement en local depuis presque 3 ans sans soucis,
J'attends le passage à PHP 7 pour donner des retours.

L'utilité de ce tuto (les originaux autant que le mien)
   ça existe et on a LAMP en entier
   ça fonctionne et c'est la doc d'Ubuntu fr
   ça m'a l'air sécurisé
   c'est une bonne base de discussion wink

Pour les doubles liens, le tuto pointe vers /media/www-dev
mais je voulais conserver les dossiers de sites dans mon

/mnt/Data/www

J'aurais pu mettre directement www-dev
et faire pointer le tuto vers /mnt/Data/www-dev
mais si je casse mon système,
je suis le tuto à la lettre puis je recrée les liens de mon dossier vers /media/www-dev
(et là, je le fait comme un porc avec un sudo nautilus pour m'éviter sitesX2 lignes de code)

et si j'avais fait la même chose chez ma tante Berthe je suivrai le même raisonnement

@jplemoine
tu t'en fous peut être mais pour les pauvres chercheurs de tutoriels dont je fais parti,
trouver des trucs de qualité, c'est pas donné (en temps)
tu avais commencé une discussion ici je te propose de la clore.
pourrais tu nous donner juste les raisons qui font que ce tuto n'est pas assez généraliste et on le modifiera en conséquence après recherches.
Si j'ai bien compris, le tuto de la doc officiel est trop orienté pro (et je n'ai pas mis le https !)
donc la doc n'est pas complète... complétons la !


HORS SUJET... mais pas tant que ça !
le jour où j'ai tapé

sudo apt-get install openssh-server

j'ai oublié jusqu'à l'existence de Samba !
donc si vous avez un truc simple pour que n'importe quel Ubuntu puisse avoir un petit serveur LAMP fonctionnel en moins d'un quart d'heure, et facile à tenir, ya du monde qui va vous aimer !

mon idée était de faire les fichiers génériques tels que je les ai donné et faire un simple
backup de l'original puis copie de mon fichier passe partout adapté (192.168.1 par exemple qui ne correspond pas à tout le monde)
ensuite on trouvera un fou furieux pour nous faire un truc qui dépote en python voire en bash
(je dois pouvoir faire un truc simple avec zenity en interface)

Pour résumer : transformons cette discussion en un simple RTFM
et je parle de LAMP pas d'Apache
./HORS SUJET
PS : j'ai lu la page de la doc d'apache et j'ai pas digéré... big_smile

Hors ligne

#14 Le 06/04/2016, à 11:13

jplemoine

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

kholo a écrit :

tu avais commencé une discussion ici je te propose de la clore.

La discussion citée est justement close....
Quand tu donnes ton avis en ayant un argumentaire et qu'une autre personne poste une autre solution qui contredit la tienne sans aucune explication, je l'interprète de la manière suivante :
"on est entre spécialistes, retournes jouer aux billes" (c'est ce que j'ai fait).

Dans le cas présent, je pense qu'il faudrait surtout modifier la page de la doc du site s'il y a des erreurs dedans...(perso, même si j'ai les droits, je ne sais pas faire...)


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#15 Le 06/04/2016, à 11:42

pires57

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Acronyme LAMP : Linux Apache MySQL PHP
yikes Aurais-je dis Apache?
LAMP n'est rien de plus qu'un ensemble de paquet contenant entre autre Apache, MySQL et PHP.

donc si vous avez un truc simple pour que n'importe quel Ubuntu puisse avoir un petit serveur LAMP fonctionnel en moins d'un quart d'heure, et facile à tenir, ya du monde qui va vous aimer !

Merci, vraiment merci:

docker search lamp
docker pull linuxconfig/lamp
docker run -p 80:80 -t -i linuxconfig/lamp /bin/bash

Un simple http://addresseIPDocker te retournera la page de config par défaut de ton LAMP server.
Nombre de commande a exécuter : 2
Temps de déploiement : uniquement le temps de download et lancement du container.

Bien sur il faut prendre le temps d'installer et de configurer Docker, ce que je viens de faire en moins de 5 minute tu prendras plus de  temps a le faire.
J'avais pas envie de me faire chier donc j'ai pris un dockerfile existant.


PS: utiliser des liens symboliques c'est juste horrible.
PS2 : Comme jplemoine à expliquer, ce tuto à juste le mérite d'exister, il y a des manières bien plus propre de faire cela.


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#16 Le 06/04/2016, à 12:01

mazarini

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Donner un exemple de vhost me semble la meilleure solution. Il suffit de changer le répertoire et le nom du serveur pour que ca marche après avoir ajouter la correspondance "127.0.0.1 nom" dans /etc/hosts, activé le site et relancé apache. Dans le cadre de développement, le plus simple et le plus normal est de travailler dans son "home". Si on est plusieurs, l'utilisation d'un gestionnaire de sources peut être envisager ou éventuellement les services de github, framasoft ou autres.


S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)

Hors ligne

#17 Le 06/04/2016, à 12:18

kholo

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

ok, docker, je prends
pour infos, où en est Fre3z69 ?

Hors ligne

#18 Le 06/04/2016, à 12:40

jplemoine

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

mazarini a écrit :

après avoir ajouter la correspondance "127.0.0.1 nom" dans /etc/hosts

Ou c'est fait par défaut ou ce n'est pas (plus) nécessaire : je ne l'ai jamais fait et ça fonctionne chez moi.

mazarini a écrit :

Dans le cadre de développement, le plus simple et le plus normal est de travailler dans son "home".

NON ! Il faut être dans une arborescence dédiée... Le home, ce ne sont que tes fichiers personnels et la personnalisation.


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#19 Le 06/04/2016, à 13:06

mazarini

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Je considère mes fichiers de développement comme des fichiers personnels. Pour la mise en ligne (local ou internet), j'utilise effectivement /srv. Ce qui est en dehors de home n'est pas sensé être modifié très souvent.

Pour le nom, à chaque projet, j'ai un nom de type www.domaine.dev inspiré du nom cible. C'est surtout qu'il y a un risque de bug (ou traitement supplémentaire) entre www.domaine.dev/ et localhost/domaine/ pour les liens. Mon principe est d'être le plus proche entre le dev et la prod. J'ai également eu des problèmes de cookies (il y a longtemps) avec localhost.


S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)

Hors ligne

#20 Le 06/04/2016, à 13:29

Rufus T. Firefly

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

jplemoine a écrit :
mazarini a écrit :

Dans le cadre de développement, le plus simple et le plus normal est de travailler dans son "home".

NON ! Il faut être dans une arborescence dédiée... Le home, ce ne sont que tes fichiers personnels et la personnalisation.

Je pense que ce que mazarini voulait dire c'est qu'on peut utiliser quelque chose comme /home/user/web comme racine pour apache, et dans les conditions indiquées : développement, et j'ajouterais serveur local.
Mais bien entendu, on peut aussi choisir /srv (ce qui est actuellement recommandé en production), ou /var/web ou finalement n'importe quoi d'autre.
Dans /etc/apache2/apache2.conf on a ça :

# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.
<Directory />
	Options FollowSymLinks
	AllowOverride None
	Require all denied
</Directory>
...
<Directory /var/www/html/>
	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted
</Directory>

#<Directory /srv/>
#	Options Indexes FollowSymLinks
#	AllowOverride None
#	Require all granted
#</Directory>

Ça, ça indique que apache doit refuser toutes les requêtes (<Directory />) sauf celles qui pointent sur la racine des sites (ou plus bas) : ici <Directory /var/www/html/>
A la place, on pourrait très bien mettre <Directory /home/rufus/web/> sans rien changer à la sécurité.

Mais il vaut mieux laisser apache2.conf comme il est, et faire ce qu'il faut dans un vhost (1 par site), puisqu'à la fin de apache2.conf on trouve :

# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf

Un truc comme ça, par exemple :

<VirtualHost *:80>
	ServerAdmin rufus@orange.fr
	ServerName monsite1
	DocumentRoot /home/rufus/web/monsite1
	<Directory /home/rufus/web/monsite1/>
               Directives pour monsite1
               ...
               Require all granted
	</Directory>
        autres directives (ErrorLog, etc.)
</VirtualHost>

Dernière modification par Rufus T. Firefly (Le 06/04/2016, à 13:40)


La provocation est une façon de remettre la réalité sur ses pieds. (Bertolt Brecht)
Il n'y a pas de route royale pour la science et ceux-là seulement ont chance d'arriver à ses sommets lumineux qui ne craignent pas de se fatiguer à gravir ses sentiers escarpés. (Karl Marx)
Il est devenu plus facile de penser la fin du monde que la fin du capitalisme

Hors ligne

#21 Le 06/04/2016, à 13:34

kholo

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

une discussion sur /etc/host
pour tenir à jour la liste des sites à bannir (on met ça de côté)
le host commençait par :

# IPAddress		Hostname				Alias

ça me donnerai un fichier /etc/host qui commence par :

# IPAddress			Hostname			Alias
# serveur local
127.0.0.1			localhost.localdomain		localhost
127.0.0.1			machin.perso			machin

Hors ligne

#22 Le 06/04/2016, à 16:04

mazarini

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Perso, pour le développement de www.domaine.com, j'utilise www.domaine.dev (et www.domaine.test pour les tests)
Ca donnerai :

# IPAddress			Hostname			Alias
# serveur local
127.0.0.1			localhost.localdomain		localhost
127.0.0.1			www.domaine.dev  www.domaine.test

Mais tu fais comme tu veux. Ca me permet juste de faire le lien entre l'url et le projet facilement (mémoire... poisson rouge...)


S'il existait une école de la politique, les locaux devraient être édifiés rue de la Santé. Les élèves pourraient s'habituer. (Pierre Dac)

Hors ligne

#23 Le 06/04/2016, à 16:32

kholo

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

mazarini a écrit :

Perso, pour le développement de www.domaine.com, j'utilise www.domaine.dev (et www.domaine.test pour les tests)
Ca donnerai :

# IPAddress			Hostname			Alias
# serveur local
127.0.0.1			localhost.localdomain		localhost
127.0.0.1			www.domaine.dev  www.domaine.test

Mais tu fais comme tu veux. Ca me permet juste de faire le lien entre l'url et le projet facilement (mémoire... poisson rouge...)

ça fonctionne comment avec plusieurs domaines ou sites ?
par exemple on à un joomla ou un wordpress, un dolibar et d'autres trucs qui fonctionnent sur serveurs
parce ce que moi... je suis un poisson rouge... donc 127.0.0.1 ou localhost voire IP si c'est sur une autre machine puis private et le site.

Hors ligne

#24 Le 06/04/2016, à 17:06

kholo

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

Pour compléter mon post :
Je part d'une installation sur un raspberry debian 8 et xfce

uname -a
Linux raspberrypi 4.1.19-v7+ #858 SMP Tue Mar 15 15:56:00 GMT 2016 armv7l GNU/Linux

http://127.0.0.1/
Erreur - http://127.0.0.1/
La page « http://127.0.0.1/ » n'a pu être chargée.
Impossible de se connecter : Connexion refusée

ls /var/www
ls: impossible d'accéder à /var/www: Aucun fichier ou dossier de ce type
ls /media
pi
lsb_release -a
bash: lsb_release -a : commande introuvable

… bon

cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
NAME="Raspbian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
cat /etc/hostname 
raspberrypi
cat /etc/hosts
127.0.0.1	localhost	raspberrypi
::1		localhost ip6-localhost ip6-loopback
ff02::1		ip6-allnodes
ff02::2		ip6-allrouters

127.0.1.1	raspberrypi

je vous passe les petits soucis de sources.list

cat /etc/apt/sources.list
deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
deb-src http://archive.raspbian.org/raspbian/ jessie main contrib non-free rpi
sudo apt-get update
sudo apt-get upgrade

et
LA PARTIE INTÉRESSANTE COMMENCE ICI

sudo apt-get install apache2 php5 mysql-server phpmyadmin

Mot de passe Superutilisateur MySQL
"Choisissez le votre"

serveur Web à configurer
Apache2
barre d'espace tabulation entrée !

j'ai aussi eu ça qui défilait pendant l'installation donc copier-coller ici

 [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the full name instead.

Dbconfig-common
Faut-il configurer la base de données de phpmyadmin avec dbconfig-common ?
Oui

Configuration de phpmyadmin
Mot de passe de l'administrateur de la base de données :
"Choisissez le votre"

puis navigateur et
http://127.0.0.1/
It works!

Hors ligne

#25 Le 06/04/2016, à 17:22

kholo

Re : Explication de l'utilisation de Lamp ou Xampp Ubuntu 14.04.4

PARTIE 2
On rentre dans le vif de notre sujet

ls /var/www
html
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/000-default.conf.bak
sudo gedit /etc/apache2/sites-available/000-default.conf

pour moi geany à la place de gedit,
je fais un copier - coller de mon fichier de mon post 9

mais je laisse à la fin

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

idem pour

sudo cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-available/default-ssl.conf.bak
sudo gedit /etc/apache2/sites-available/default-ssl.conf

puis

sudo mkdir /media/www-dev
sudo mkdir /media/www-dev/public
sudo mkdir /media/www-dev/private
sudo chown -R $USER:users /media/www-dev
sudo ln -s /media/www-dev/public /var/www/html/public
sudo ln -s /media/www-dev/private /var/www/html/private
sudo mv /var/www/html/index.html /var/www/html/index-old.html

redémarrage apache

sudo /etc/init.d/apache2 force-reload

puis à nouveau navigateur et
http://127.0.0.1/
Index of / : je suis en vue "ftp"

Index of /
html/
2016-04-06 16:44
Apache/2.4.10 (Raspbian) Server at 127.0.0.1 Port 80

les dossiers sont là !

ls -l /media/
total 8
drwxr-x---+ 2 root root  4096 nov.   4 18:34 pi
drwxr-xr-x  4 pi   users 4096 avril  6 16:43 www-dev

ls -l /media/www-dev/
total 8
drwxr-xr-x 2 pi users 4096 avril  6 16:43 private
drwxr-xr-x 2 pi users 4096 avril  6 16:43 public

ls -l /var/www
total 4
drwxr-xr-x 2 root root 4096 avril  6 16:44 html

ls -l /var/www/html/
total 12
-rw-r--r-- 1 root root 11104 avril  6 16:28 index-old.html
lrwxrwxrwx 1 root root    22 avril  6 16:44 private -> /media/www-dev/private
lrwxrwxrwx 1 root root    21 avril  6 16:44 public -> /media/www-dev/public

puis
Création d'un site dans www-dev
on crée un dossier mon_site avec nautilus (sans être root)
ou

mkdir /media/www-dev/private/mon_site/

et un fichier html
je l'ai enregistré directement avec LibreOffice en index.html
dans le dossier /media/www-dev/private/mon_site/

et, dans le navigateur
http://127.0.0.1/html/private/mon_site/

voilà ensuite on verra SQL je pense !

Hors ligne