Skip to main content

2017: Setting up Laravel on Ubuntu 16.04

Each operating system has it's own issues. I ran into one recently when installing Laravel on my Ubuntu System. Before I begin, this is what I did to get it initialized.

  • I installed LAMP
  • In terminal run php -v
  • If it comes back as 5.6 you'll have to change the version to the latest version, i.e. 7.1
  • To do that, open your terminal and enter the following
    • $ sudo a2dismod php5.6
    • $ sudo a2enmod php7.1
    • $ sudo service apache2 restart
  • Verify that it's the new version: php -v
  • Next, get composer. 
  • cd into your LAMP root directory
  • Run the following command to create a Laravel project:
    • sudo composer create-project laravel/laravel your-project-name --prefer-dist
  • Wait until it's complete and navigate to your newly created directory/public folder in your browser
    • http://localhost/your-project-name/public
At this point I received an error and it stated:

The stream or file "/home/dino/www/your-project-name/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied. 

We'll have to modify the permissions slightly to get rid of this message.
  • cd into your-project-name folder. How do you know you're there?
    • If you type in ls you should see the .env file
  • Type the following commands and you're done
    • $ sudo chown -R yourusername:www-data storage
      • For me this was, sudo chown -R dino:www-data storage
    • $ sudo chmod -R ug+w
    • $ php artisan cache:clear
    • $ php artisan dump-autoload
      • You might get an error. Just keep going.
    • composer dump-autoload
  • And you're done. Refresh the page in your browser and you'll see that it now works.
As an additional note. If you're planning on pushing the files to a production server, the easiest way is to install FileZilla and connect to your server.
  • Modify the database file if you're using the database online
  • Upload the entire folder's contents
  • If you're just getting a 500 error, and you have access to cPanel, continue on.
  • Go to http://example.com/cpanel
  • After logging into your account, navigate to Software -> MultiPHP Manager
  • Select your domain by clicking on the checkbox next to it.
  • Select ea-php70 from the PHP Version drop-down and click Apply.
  • Refresh the page and you'll see that it all works now.

Comments

  1. I hope you would be doing well. Dear admin your site is really easy to understand and one of the best in the town. I had gone through your site and I can confidently say that your site is free of bugs. Therefore, everyone should use this website. However, we also provide website development tools. Here is the link of our site jsononline

    ReplyDelete

Post a Comment

Popular posts from this blog

Beginner Java Exercise: Sentinel Values and Do-While Loops

In my previous post on while loops, we used a loop-continuation-condition to test the arguments. In this example, we'll loop at a sentinel-controlled loop. The sentinel value is a special input value that tests the condition within the while loop. To jump right to it, we'll test if an int variable is not equal to 0. The data != 0 within the while (data != 0) { ... } is the sentinel-controlled-condition. In the following example, we'll keep adding an integer to itself until the user enters 0. Once the user enters 0, the loop will break and the user will be displayed with the sum of all of the integers that he/she has entered. As you can see from the code above, the code is somewhat redundant. It asks the user to enter an integer twice: Once before the loop begins, and an x amount of times within the loop (until the user enters 0). A better approach would be through a do-while loop. In a do-while loop, you "do" something "while" the condition

Programming Language Concepts Questions/Answers Part 3

1. What is an associative array? - An unordered collection of data elements that are indexed by keys. 2. Each element of an associative array is a pair consisting of a _______ and a _______. - key and a value 3. True or False? Java supports associative arrays? - True. As a matter of fact, Perl, Python, Ruby, C++, C# and F# do too. 4. What are associative arrays called in Perl? - hashes 5. Why are associative arrays in Perl called hashes? - Because their elements are stored and retrieved with a hash function 6. What character does a hash in Perl begin with? % 7. In Perl, each key is a _____ and each value is a _______. - string - scalar 8. In Perl, subscripting is done using _______ and _______. - braces and keys 9. In Perl, how are elements removed from hashes? - using delete 10. In Perl, the ________ operator tests whether a particular value is a key in a hash. - exists 11. What are associative arrays called in Python? - dictionaries 12. What is a dif

Creating your own ArrayList in Java

Wanted to show that certain data structures in Java can be created by you. In this example, we'll go ahead and create an ArrayList data structure that has some of the methods that the built in ArrayList class has. We'll create 2 constructors: The default constructor that creates an ArrayList with a default size of 10. Constructor that allows an initial size to be passed to the array. We'll also create a number of methods: void add(Object x);  A method that allows you to place an Object at the end of the ArrayList. void add(int index, Object x);  A method that allows you to place a value at a given location. Object get(int index):  Allows you to retrieve a value of the arrayList array from a given location. int size();  Allows you to get the number of elements currently in the Arraylist. boolean isEmpty();  Tests to see if the Arraylist is empty. boolean isIn(Object x);  A method that sees if a particular object exist in the arrayList. int find(Object x);