Installez laravel 5 sur Ubuntu 16.04

20

Quelqu'un a-t-il installé laravel 5 sur Ubuntu 16.04? Je viens juste de passer à Ubuntu 16.04 et j'essaie d'installer le framework laravel 5 avec compositeur. Mais chaque fois que j'essaie de créer un projet, cela me donne cette erreur

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/laravel v5.2.0 requires laravel/framework 5.2.* -> satisfiable by laravel/framework[v5.2.0, v5.2.1, v5.2.10, v5.2.11, v5.2.12, v5.2.13, v5.2.14, v5.2.15, v5.2.16, v5.2.17, v5.2.18, v5.2.19, v5.2.2, v5.2.20, v5.2.21, v5.2.22, v5.2.23, v5.2.24, v5.2.25, v5.2.26, v5.2.27, v5.2.28, v5.2.29, v5.2.3, v5.2.30, v5.2.31, v5.2.4, v5.2.5, v5.2.6, v5.2.7, v5.2.8, v5.2.9].
    - laravel/laravel v5.2.15 requires laravel/framework 5.2.* -> satisfiable by laravel/framework[v5.2.0, v5.2.1, v5.2.10, v5.2.11, v5.2.12, v5.2.13, v5.2.14, v5.2.15, v5.2.16, v5.2.17, v5.2.18, v5.2.19, v5.2.2, v5.2.20, v5.2.21, v5.2.22, v5.2.23, v5.2.24, v5.2.25, v5.2.26, v5.2.27, v5.2.28, v5.2.29, v5.2.3, v5.2.30, v5.2.31, v5.2.4, v5.2.5, v5.2.6, v5.2.7, v5.2.8, v5.2.9].
    - laravel/laravel v5.2.23 requires laravel/framework 5.2.* -> satisfiable by laravel/framework[v5.2.0, v5.2.1, v5.2.10, v5.2.11, v5.2.12, v5.2.13, v5.2.14, v5.2.15, v5.2.16, v5.2.17, v5.2.18, v5.2.19, v5.2.2, v5.2.20, v5.2.21, v5.2.22, v5.2.23, v5.2.24, v5.2.25, v5.2.26, v5.2.27, v5.2.28, v5.2.29, v5.2.3, v5.2.30, v5.2.31, v5.2.4, v5.2.5, v5.2.6, v5.2.7, v5.2.8, v5.2.9].
    - laravel/laravel v5.2.24 requires laravel/framework 5.2.* -> satisfiable by laravel/framework[v5.2.0, v5.2.1, v5.2.10, v5.2.11, v5.2.12, v5.2.13, v5.2.14, v5.2.15, v5.2.16, v5.2.17, v5.2.18, v5.2.19, v5.2.2, v5.2.20, v5.2.21, v5.2.22, v5.2.23, v5.2.24, v5.2.25, v5.2.26, v5.2.27, v5.2.28, v5.2.29, v5.2.3, v5.2.30, v5.2.31, v5.2.4, v5.2.5, v5.2.6, v5.2.7, v5.2.8, v5.2.9].
    - laravel/laravel v5.2.27 requires laravel/framework 5.2.* -> satisfiable by laravel/framework[v5.2.0, v5.2.1, v5.2.10, v5.2.11, v5.2.12, v5.2.13, v5.2.14, v5.2.15, v5.2.16, v5.2.17, v5.2.18, v5.2.19, v5.2.2, v5.2.20, v5.2.21, v5.2.22, v5.2.23, v5.2.24, v5.2.25, v5.2.26, v5.2.27, v5.2.28, v5.2.29, v5.2.3, v5.2.30, v5.2.31, v5.2.4, v5.2.5, v5.2.6, v5.2.7, v5.2.8, v5.2.9].
    - laravel/laravel v5.2.29 requires laravel/framework 5.2.* -> satisfiable by laravel/framework[v5.2.0, v5.2.1, v5.2.10, v5.2.11, v5.2.12, v5.2.13, v5.2.14, v5.2.15, v5.2.16, v5.2.17, v5.2.18, v5.2.19, v5.2.2, v5.2.20, v5.2.21, v5.2.22, v5.2.23, v5.2.24, v5.2.25, v5.2.26, v5.2.27, v5.2.28, v5.2.29, v5.2.3, v5.2.30, v5.2.31, v5.2.4, v5.2.5, v5.2.6, v5.2.7, v5.2.8, v5.2.9].
    - laravel/laravel v5.2.31 requires laravel/framework 5.2.* -> satisfiable by laravel/framework[v5.2.0, v5.2.1, v5.2.10, v5.2.11, v5.2.12, v5.2.13, v5.2.14, v5.2.15, v5.2.16, v5.2.17, v5.2.18, v5.2.19, v5.2.2, v5.2.20, v5.2.21, v5.2.22, v5.2.23, v5.2.24, v5.2.25, v5.2.26, v5.2.27, v5.2.28, v5.2.29, v5.2.3, v5.2.30, v5.2.31, v5.2.4, v5.2.5, v5.2.6, v5.2.7, v5.2.8, v5.2.9].
    - laravel/framework v5.2.9 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.8 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.7 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.6 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.5 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.4 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.31 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.30 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.3 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.29 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.28 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.27 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.26 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.25 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.24 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.23 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.22 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.21 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.20 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.2 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.19 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.18 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.17 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.16 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.15 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.14 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.13 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.12 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.11 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.10 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.1 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - laravel/framework v5.2.0 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
    - Installation request for laravel/laravel ^5.2 -> satisfiable by laravel/laravel[v5.2.0, v5.2.15, v5.2.23, v5.2.24, v5.2.27, v5.2.29, v5.2.31].

  To enable extensions, verify that they are enabled in those .ini files:
    - /etc/php/5.6/cli/php.ini
    - /etc/php/5.6/cli/conf.d/10-opcache.ini
    - /etc/php/5.6/cli/conf.d/10-pdo.ini
    - /etc/php/5.6/cli/conf.d/20-calendar.ini
    - /etc/php/5.6/cli/conf.d/20-ctype.ini
    - /etc/php/5.6/cli/conf.d/20-exif.ini
    - /etc/php/5.6/cli/conf.d/20-fileinfo.ini
    - /etc/php/5.6/cli/conf.d/20-ftp.ini
    - /etc/php/5.6/cli/conf.d/20-gettext.ini
    - /etc/php/5.6/cli/conf.d/20-iconv.ini
    - /etc/php/5.6/cli/conf.d/20-json.ini
    - /etc/php/5.6/cli/conf.d/20-phar.ini
    - /etc/php/5.6/cli/conf.d/20-posix.ini
    - /etc/php/5.6/cli/conf.d/20-readline.ini
    - /etc/php/5.6/cli/conf.d/20-shmop.ini
    - /etc/php/5.6/cli/conf.d/20-sockets.ini
    - /etc/php/5.6/cli/conf.d/20-sysvmsg.ini
    - /etc/php/5.6/cli/conf.d/20-sysvsem.ini
    - /etc/php/5.6/cli/conf.d/20-sysvshm.ini
    - /etc/php/5.6/cli/conf.d/20-tokenizer.ini
  You can also run 'php --ini' inside terminal to see which files are used by PHP in CLI mode.

Installation failed, deleting ./composer.json.

Je lis des articles Ici l'un d'entre eux dit que Ubuntu 16.04 est livré avec PHP7 par défaut, mais nous pouvons toujours utiliser PHP5. Cependant, j'ai essayé à la fois PHP7 & amp; PHP5 et toujours obtenir les mêmes erreurs! Des idées? Merci

    
posée Mohammad Barhoush 29.04.2016 - 09:40
la source

9 réponses

29

Comment installer Laravel dans Ubuntu 16.04

Mise à jour: Laravel 5.4

En raison du grand intérêt pour cette question, j'ai décidé de le mettre à jour et de créer un petit script bash pour installer tout ce dont vous avez besoin pour travailler avec Laravel (celui-ci est avec le NGINX)

lien

Vous pouvez simplement le copier et le modifier comme bon vous semble. Peut-être avez-vous déjà installé des composants à l'intérieur du script, si tel est le cas, vous pouvez supprimer librement les parties dont vous n'avez pas besoin.

Laravel 5.2 est en bas:

installation de base (facultatif)

sudo apt-get install git
sudo apt-get install zip

LAMP

sudo apt-get install tasksel
sudo tasksel install lamp-server

CURL

sudo apt-get install curl php-curl php-mcrypt php-mbstring php-gettext

activer les mods

sudo phpenmod mcrypt
sudo phpenmod mbstring
sudo a2enmod rewrite
sudo systemctl restart apache2

Compositeur

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

installer phpmyadmin

sudo apt-get install phpmyadmin     

plus tard accessible via localhost / phpmyadmin

Créer un projet Laravel

cd /var/www/html/
sudo composer create-project laravel/laravel work --prefer-dist
sudo chmod -R 777 work (do not set 777 on "live" server!)

Création de l’hôte virtuel work.com

sudo gedit /etc/apache2/sites-available/work.com.conf

et collez ceci dans ce document

#/etc/apache2/sites-available/work.com.conf contains following lines
<VirtualHost *:80>
        ServerName work.com
        DocumentRoot /var/www/html/work/public

        <Directory /var/www/html/work/public>
            AllowOverride All
            Require all granted
        </Directory>
</VirtualHost>

activer ce site

sudo a2ensite work.com
service apache2 reload

Fixez le fichier hosts pour pouvoir y accéder via le navigateur Web

sudo gedit /etc/hosts //space between gedit and destination!

        #/etc/hosts contents following lines                                
        127.0.0.1       work.com

ou utilisez cette commande

sudo -- sh -c "echo '\n127.0.0.1 \twork.com'>> /etc/hosts"

C’est ça qui est installé!

J'ai fait un tutoriel sur YouTube pour bien faire les choses .... Avec tout ce dont vous avez besoin pour travailler avec laravel. Voici le lien: lien

    
réponse donnée lewis4u 05.05.2016 - 14:29
la source
3

J'ai mis à jour php 5.6.11 à 5.6.21.

Donc, dans mon cas, je devais courir:

sudo apt-get install php5.6-mbstring

PS: Comment je suis passé de 5.6.11 à 5.6.21:

sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php 
sudo apt-get update 
sudo apt-get install php5.6

Raison de la mise à niveau: zend_mm_heap endommagé lors de la mise à jour du composeur.

    
réponse donnée anD 12.05.2016 - 10:43
la source
3

Voici les étapes à suivre pour installer Laravel 5 sur Ubuntu Server 16.04 après une nouvelle mise à jour

Tout d’abord, je devais supprimer complètement tout PHP, comme Mohammad Barhoush l’a déclaré:

  • sudo apt-get -y purge php.*

Puis j'ai réinstallé PHP avec:

  • sudo apt install php libapache2-mod-php
  • sudo apt install php-cli
  • sudo apt install php-mysql

Après avoir réinstallé PHP ver.7.0, j’ai installé les paquetages connexes supplémentaires recommandés par Mohhammad:

  • sudo apt-get install curl php-curl php-mcrypt php-mbstring php-gettext php-gd

Et activé les mods

  • sudo phpenmod mcrypt
  • sudo phpenmod mbstring

    Et finalement, après tout ce compositeur était toujours en train de se plaindre de ne pas avoir l'extension zip pour un composer update , donc j'ai installé ce qui suit:

  • sudo apt-get install php7.0-zip

Après cela, tout s'est bien passé sans erreurs!

Ce sont les étapes nécessaires pour que laravel 5 fonctionne à partir de la version précédente de LTS d'Ubuntu Server. J'espère que cela a aidé! Cordialement:)

-Derick

    
réponse donnée Derick Vigne 09.06.2016 - 20:58
la source
2

L'extension PHP mbstring réside maintenant dans un paquet séparé, vous devez donc faire:

apt-get install php-mbstring
    
réponse donnée oerdnj 29.04.2016 - 12:39
la source
1
La solution de

oerdnj fonctionne, après avoir installé mbstring , vous devriez l'activer dans php.ini avant de lancer composer install . Dans mon cas, laravel nécessite ext-mbstring et ext-dom:
apt-get install php-dom

    
réponse donnée spqa 02.05.2016 - 04:01
la source
1

J'ai donc eu le même problème que le gars ci-dessus où j'avais besoin d'installer php-dom, j'ai donc essayé d'exécuter apt-get install php-dom mais le message est venu

Package php-dom is a virtual package provided by:
php5.5-xml 5.5.35-1+donate.sury.org~xenial+2
php7.0-xml 7.0.6-1+donate.sury.org~xenial+1
php5.6-xml 5.6.21-1+donate.sury.org~xenial+2
You should explicitly select one to install.

Comme je suis un peu nouveau sur le terminal, j'ai trouvé cela un peu déroutant mais je lance unupuntu 16.04 avec php7 alors je viens de courir: apt-get install php7.0-xml et ça a fonctionné pour moi ... j'espère que ça aide quelqu'un!

    
réponse donnée Matthew Jonat 05.05.2016 - 07:06
la source
1

Merci à tous pour vos réponses .. Je suis enfin capable de résoudre ce problème en faisant:

  • Supprimez complètement php en premier:

    sudo apt-get -y purge php.*

  • Réinstallez php et ces paquets importants liés:

    sudo apt-get install curl php-curl php-mcrypt php-mbstring php-gettext

  • Activer les mods (Merci à la vidéo lewis4u):

    sudo phpenmod mcrypt

    sudo phpenmod mbstring

réponse donnée Mohammad Barhoush 07.05.2016 - 09:50
la source
0

Pour installer Laravel 5.4 on Ubuntu 16.04 comme dans la documentation de Laravel avec la vérification:

  1. Vérifiez votre version de PHP dans le terminal par: php -v , votre version php doit être PHP >= 5.6.4
  2. Archiver le terminal avec php -m pour OpenSSL PHP Extension et PDO PHP Extension .
  3. Terminal: sudo apt install php-mbstring et vérifiez à nouveau par php -m pour Mbstring PHP Extension et Tokenizer PHP Extension .

  4. Terminal: sudo apt install php-xml et vérifiez à nouveau par php -m pour XML PHP Extension

  5. Téléchargez Composer par ces 4 étapes dans le terminal:

    • php -r "copy (' lien ", 'composer-setup.php'); "

    • php -r "if (hash_file ('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') {echo 'Installateur vérifié'; } else {echo 'Installer corrompu'; unlink ('composer-setup.php'); } echo PHP_EOL; "

    • php composer-setup.php

    • php -r "unlink ('composer-setup.php');"

  6. Vérifiez le composeur dans le terminal: php composer.phar

  7. Installez Laravel in terminal:

    php composer.phar global require "laravel/installer"
    La sortie dans le terminal affichera votre répertoire actuel à /home/yourname/.config/composer , accédez à votre répertoire actuel et appuyez sur ctrl+h pour afficher le fichier caché.
    Accédez au dossier .config puis au dossier composer avec le contenu suivant: Contenu du dossier du compositeur

  8. Créez Laravel project in /var/www/html dans le terminal:

    php composer.phar create-project --prefer-dist laravel/laravel /var/www/html/myLaravel

  9. Ouvrez votre myLaravel dans le terminal puis coller: php artisan serve et copier http://127.0.0.1:8000 dans votre navigateur

réponse donnée Noha Salah El Tohamy 13.07.2017 - 14:01
la source
0

Vous devez faire quelque chose manuellement dans le fichier de configuration. J'ai trouvé que cet article était vraiment utile . Tout d'abord, vous devez vérifier la bibliothèque météo mbstring.dll est déjà installée dans le système en utilisant la fonction «phpinfo ()». Si c'est activé, au lieu de décommenter 'extension = php_mbstring.dll', conservez-le simplement commenté dans le fichier de configuration php.ini ou, si ce n'est pas le cas, installez-le par   sudo apt-get install php-mbstring php7.0-mbstring

Configurez simplement les éléments suivants.

; mbstring.language = All
;mbstring.internal_encoding = UTF-8
;mbstring.http_output = UTF-8
;mbstring.encoding_translation = On
;mbstring.func_overload = 0

C'est ça .. Je pense que vous connaissez le reste des choses comme comment installer laravel et tout ..

    
réponse donnée ARUN Madathil 15.08.2017 - 15:19
la source

Lire d'autres questions sur les étiquettes