2019年4月9日 星期二

[Laravel]環境架設,使用docker + laradock

1.選擇使用docker + laradock在windows10的環境使用
先至docker官方網站下載docker for windows 

2.依照執行程式下載安裝
這邊我的電腦有遇到一些問題順便記錄下來, 在下載啟動docker時發生錯誤
  Hardware assisted virtualization and data execution protection must be enabled in the BIOS
要去bios那邊把模擬啟動,之後進到windows後查看工作管理員是否有正常開啟如下圖


3.至laradocker官方網站開始依照官方說明執行設定
這邊要注意的地方是下載下來的laradock資料夾放置好後,
至資料夾內.env檔找到Mysql的設定
MYSQL_VERSION=latest
改為
MYSQL_VERSION=5.7
這邊解釋一下原因,因為在最新版的mysql裡面登入資料庫密碼的強度有設定為不能太簡單並解有經過sh加密,而laradock預設的mysql密碼為"root",將會導致無法登入mysql,在查了相關問題解法後,大部分的網友建議把mysql version降為5.7即可解決問題。

4.開啟windows命令提示字元(官方建議使用PowerShell)
選擇到laradock資料夾如下圖

docker -v 查看目前docker版本
docker-compose up -d nginx mysql phpmyadmin redis workspace  安裝相關套件(第一次執行需要一點時間下載安裝)
docker-compose start  開啟server
docker-compose down 關閉server
docker-compose restart  重啟server


5.安裝完成後開始下載laravel專案
剛從git下載下來的laravel專案並不是完整的專案,還需要以下步驟還原
(1)composer install  還原vendor目錄
(2)npm install   還原node_modules目錄
(3)cp .env.example .env
    php artisan key:generate
還原.env

6.設定nginx的config檔
在laradocker資料夾找到nginx資料夾,再找到sites資料夾,
裡面已經有一個default.conf
如果要新增一個新的網域,
請複製laravel.conf.example另存成新的.conf並修改內容如下圖

7.開啟local.你的專案名稱,來檢視看看是否完成
若完成如下圖

2018年5月12日 星期六

[Mysql]當資料量大時

當SQL查詢要join大資料的表時 可以針對要join的欄位做索引 可大幅提升查詢效能 要注意的是join起來的欄位需要相同類型

2018年1月22日 星期一

[Laravel]開始之前...


1.用composer新增專案
composer create-project laravel/laravel laravelproject
2.修改.env設定
DB_DATABASE=
DB_USERNAME=
DB_PASSWORD=
3.修改 app/Providers/AppServiceProvider.php
use Illuminate\Support\Facades\Schema;
public function boot()
{
Schema::defaultStringLength(191); //這一行新增
}
4.修正時區 config/app.php
'timezone' => 'Asia/Taipei',
5.建立登入系統
php artisan make:auth
6.建立資料表
php artisan make:migration create_users_table
php artisan migrate
7.roll back
php artisan migrate:rollback

# 建立 Controller
php artisan make:controller PhotoController --resource

php artisan make:controller PhotoController --resource --model=Photo
# 建立 model
php artisan make:model User
修改欄位 1創建一個修改欄位的class php artisan make:migration change_table_nullable 2class內容 string('column')->nullable(); }); } /** * Reverse the migrations. * * @return void */ public function down() { // DB::statement('ALTER TABLE job_main MODIFY `outsourcing_company` varchar(191) NOT NULL;'); DB::statement('ALTER TABLE job_main MODIFY `outsourcing_date` varchar(191) NOT NULL;'); } } 3執行artisan migrate php artisan migrate

2018年1月2日 星期二

[XAMPP]excel報表匯出功能錯誤

Warning: Cannot modify header information – headers already sent by
當出現這方面的警告時

請去php.ini修改
output_buffering = on

即可

2017年12月19日 星期二

[XAMPP]更改Apache網站目錄

XAMPP網站預設安裝目錄為C:\xampp\htdocs\

要改變網站目錄如下

1.找到C:\xampp\apache\conf\httpd.conf
2.修改內容如下

DocumentRoot "C:/xampp/htdocs"
改為要指定的路徑
<Directory "C:/xampp/htdocs">
改為要指定的路徑

2017年10月6日 星期五

[laravel]產生遷移檔

4.2版本
php artisan migrate:make create_users_table
5.3版本
php artisan make:migration create_users_table

以上是兩個版本的差異


資料填充
use App\User;
use Illuminate\Database\Eloquent\Model;
加上這兩行
才能找到 class User
否則會出現
Seeding: UserTableSeeder
PHP Fatal error:  Class 'User' not found
的錯誤



表單加入
https://laravelcollective.com/docs/5.4/html

2017年9月26日 星期二

[主機搬移]遇到的問題

在wordpress後台主題控制選單發生連結跑掉的問題,
後來發現是快取的關係,
清除快取後便正常顯示了。

正常的URL:
wp-admin/admin.php?page=of-advanced-menu&tab=advanced-settings-tab


不正常的URL:
wp-admin/admin.php?page=of-advanced-menu#admin-/wp-admin/admin.php?page=of-advanced-menu&tab=advanced-settings-tab

[Laravel]環境架設,使用docker + laradock

1.選擇使用docker + laradock在windows10的環境使用 先至 docker官方網站 下載 docker for windows   2.依照執行程式下載安裝 這邊我的電腦有遇到一些問題順便記錄下來, 在下載啟動docker時發生錯誤   Hardw...