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

Popular posts from this blog

Programming Language Concepts Test Questions/Answers

One of the easiest methods that I use to learn new topics is by creating notes on the subject and then by turning those notes into questions and answers. Remembering answers to questions just seems more natural. I was able to memorize 323 questions and answers in a matter of a couple of days. I wanted to start doing this for some topics that I find pretty interesting. To begin, here are some questions and answers to Programming Language Concepts (PLC). I'm reading your mind right now and the answer is yes, there will be more.
1. Name 3 reasons for studying PLC. - Better understanding of current programming languages - Advancement of computing - Increased capability to express ideas - Increased capability to learn new programming language. - Better understanding of which programming language to choose. 
2. Name the 5 programming domains and languages best suited for each. - Scientific (Fortran, ALGOL 60)
- Business (COBOL)
- AI (Lisp, Scheme, Prolog)
- Web (PHP, Java, JavaScript)
- Ga…

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 is true. S…

How to Install and use phpDocumentor

If you have Windows, and are running WAMP, this is the step by step installation guide to getting phpDocumentor to work. This write-up assumes that you have WAMP installed and working.
Download Composer from https://getcomposer.org/Run through the installation with the default settings. It will locate php for you automatically. If you're having any issues with the install, Google the response. There shouldn't be any errors though.If you have CMD opened, close it now.Open CMD and type in composer. If something starts happening, Composer is installed correctly.Go to the directory that you want to install phpDocumentor.In your project directory, create a JSON file. Name it, composer.json and add the following code to it
{"require-dev":{"phpdocumentor/phpdocumentor":"2.*"}}For example, let's say that your project directory is located in C:/wamp/www/your_project, you're going to want to open CMD and make sure that you've navigated to that dir…