2015年5月11日 星期一

Laravel On Ubuntu 環境建置指令紀錄 (Apache + MySQL + PHP5)

一早上班就遇到很慘的事情,aws 連不進去,public key 找不到,之前也沒有 snapshot 起來,結果也只能開新的 instance。

也不是用 docker,開新 server 最煩的就是環境建置,一氣之下乾脆把安裝步驟都記起來,以免下次又要重建...,重新 google 很花時間成本。 QQ

Server 背景與用途說明:
1. 一般 web server,aws 的 micro instance,作業系統 Ubuntu 14.04.1 LTS
2. 用的是 Apache + MySQL + php (皆獨立開分安裝)
3. web framework 用的是 Laravel 4.2
4. 用 80 port 而已

Step:
$ sudo apt-get update

// 安裝 git
$ sudo apt-get install git

// 安裝 apache
$ sudo apt-get install apache2

// 安裝 mysql , php, 還有 php 需要用到的  mcrypt, 相關模組
$ sudo apt-get install mysql-server php5-mysql
$ sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt
$ sudo apt-get install openssl
$ sudo apt-get install curl
$ sudo php5enmod mcrypt
$ sudo service apache2 restart
$ sudo apt-get install php5-cli

// 安裝 redis,裝完後要使用的話,記得下 redis-server 啟用它
$ sudo apt-get install redis-server


// 環境確認 (php, apache, mysql 是否都存在)
$ php -v
$ which mysql
$ which apache2

// mysql 連線測試
$ mysql -uroot -p你的mysql密碼

// 安裝 composer
$ curl -sS https://getcomposer.org/installer | php

// 測試 composer 安裝正常
$ composer
ubuntu@ip-XXX-XX-X-XX:~$ composer

// clone 專案到 /var/www
這中間要 git clone 要自己注意 clone 的方式是 https 還是 ssh, 如果是 ssh 要記得加入server的 ssh public key 到 git(端看你用什麼方式 git clone,我是 bitbucket)

*備註: 產生 ssh key   $ ssh-keygen -t rsa

會問你一些問題,不知道就一直 enter 下去。 把 id_rsa.pub 內容複製到 git/bitbucket 的 development key 管理的地方

$ cat ~/.ssh/id_rsa.pub 然後貼到設定檔去

$ cd /var/www
$ git clone git@XXX.xxx:team/repo-name.git
   或者
$ git cloen https://XXX 用打帳號密碼的方式下載

//clone 完成後,cd 專案的資料夾
$ cd /var/www/repo-name

// 先進行 composer update 下載相依的 package
$ composer update

// 對 app/storage 做 777 或 755 的權限
$ sudo chmod 0777 -R storage/

// 如果要跑 migration 建立 table 的話,記得先建好 database,不然也是會請你先建 DB
php artisan migrate

// apache virtualhost 設定
編輯 /etc/apache2/sites-available/000-default.conf
將 documentroot 設為你的專案資料夾,laravel 專案的話要指到 public 那一層。
DocumentRoot /var/www/your_folder/public

// 重啟 apache
$sudo service apache2 restart

// 因為 laravel 有 .htaccess,要做一些 apache 的 rewrite
sudo a2enmod rewrite
sudo service apache2 restart


差不多這樣就可以。

7 則留言:

  1. 直接寫成sh檔會比較簡單

    回覆刪除
    回覆
    1. 恩... 確實有這個打算
      只是我不太會寫 sh (淚奔)....

      刪除
  2. apt-get install apache2 git mysql-server php5-mysql php5 libapache2-mod-php5 php5-mcrypt openssl curl php5-cli -y

    -------------------------------------
    y放錯行- -...

    回覆刪除
  3. 非常感謝,寫得好清楚。
    一直以來都是做一步查一步,感謝整理XD

    回覆刪除
  4. 太實用了,感恩感恩
    給推

    回覆刪除

若你看的文章,時間太久遠的問題就別問了,因為我應該也忘了... XD

Vue multiselect set autofocus and tinymce set autofocus

要在畫面一進來 focus multiselect 的方式: 參考: https://jsfiddle.net/shentao/mnphdt2g/ 主要就是在 multiselect 的 tag 加上 ref (例如: my_multiselect), 另外在 mounted...