Laravel Valet 은 PHP or Laravel 개발하는데에 거의 필수 툴이 되어가는 듯 합니다. Laravel Valet 제대로 설치하시고 정신건강을 보존하시길 바랍니다.
좀 보강할 내용은 댓글로 남겨주세요.
"Web development that doesn't hurt"
- https://laravel.kr/docs/5.8/valet
- https://laravel.com/docs/6.0/valet
- https://github.com/cretueusebiu/valet-windows
- https://www.lesstif.com/pages/viewpage.action?pageId=30277941
- https://www.lesstif.com/pages/viewpage.action?pageId=51282114
- https://www.lesstif.com/pages/viewpage.action?pageId=39126153
- 설치시 되도록이면 Windows 에 설치되어있는 웹서버류(apache, nginx)는 정지 및 삭제 합니다.
- choco install php 로 설치 하지 않은 php 는 삭제 합니다.
- 한글 계정명의 경우 제대로 동작하지 않을수 있습니다. 유의 하시길 바랍니다.
cmd as admin 으로 실행후
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
로 Chocolatey 를 설치합니다.
choco --version
choco install -y Cmder
cmder 로 창을 띄워서 CMD as Admin 으로 창을 띄웁니다.
choco install -y php
php --version
필요 모듈을 comment 해제 하거나 추가합니다.
C:\tools\php73\php.ini
...
extension_dir = "ext"
...
;extension=bz2
extension=curl
extension=fileinfo
;extension=gd2
;extension=gettext
;extension=gmp
extension=intl
;extension=imap
;extension=interbase
;extension=ldap
;extension=mbstring
;extension=exif ; Must be after mbstring as it depends on it
;extension=mysqli
;extension=oci8_12c ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
extension=pdo_mysql
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
extension=pdo_sqlite
;extension=pgsql
;extension=shmop
...
[opcache]
zend_extension=php_opcache.dll
opcache.enable=On
opcache.enable_cli=On
...
php -m
https://laravel.com/docs/5.8#installation 에서 laravel 에서 필요로 하는 모듈을 확인하도록 하세요. valet, laravel-installer 를 위해 curl, zip, fileinfo 모듈도 있어야 합니다.
> choco install -y composer
> composer --version
windows 환경변수에 다음을 추가합니다.
%APPDATA%\Composer\vendor\bin
User 에 대한 환경변수, 시스템 환경 변수 에 다음이 있음 확인합니다.
C:\tools\php73
C:\ProgramData\ComposerSetup\bin
https://mayakron.altervista.org/wikibase/show.php?id=AcrylicHome
페이지에서 acrylic-dns-proxy 1.0.1 버젼을 깝니다.
Windows Valet 설치
composer global require cretueusebiu/valet-windows
valet --version
CMD as admin 으로 창을 엽니다.
valet install
이렇게 할때 acrylic-dns-proxy 가 오류가 날수 있습니다. 이럴때 uninstall & install 합니다.
valet uninstall
valet install
acrylic-dns-proxy 가 제대로 돌아간다면 다음 테스트가 제대로 동작합니다.
ping blog.test
Pinging blog.test [127.0.0.1] with 32 bytes of data:
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
문제가 있을 경우 "제어판" > "네트워크 및 인터넷" > "네트워크 연결" 에 간후 인터넷이 연결 되어있는 것을 우 클릭후 상태 > "속성" > "Internet Protocol version 4" > "속성" 클릭후 "다음 DNS 서버 주소" 사용 기본 설정 DNS 서버 127.0.0.1 보조 DNS 서버 1.1.1.1
설정합니다. 그런후 다시 ping blog.test 테스트 합니다.
혹시나 끝 도메인을 .dev 로 바꾸지 마시길 바랍니다. chrome 에서 접근이 안됩니다.
Phpstorm 을 사용하면 프로젝트 폴더인 ~/PhpstormProjects 에서 park 합니다.
composer global require laravel/installer
cd ~/PhpstormProjects
laravel new blog
valet park
park 된 리스트는 다음과 같이 확인합니다.
valet paths
[
"C:\\Users\\yupmi\\PhpstormProjects"
]
http://blog.test 브라우저에서 테스트 합니다. 도메인은 소문자 - 로만 구성되니 git 프로젝트 폴더 생성에 유의
추후 추가하도록 하겠습니다.
- park : 폴더 안의 폴더들을 서비스 하게 됩니다. 되도록이면 도메인 규칙에 맞게 소문자,- 정도만 써서 git repository 명으로 해주는게 좋습니다.
- forget : park 한 것을 취소 합니다.
- link : 폴더 안에서 valet link 를 하면 해당 폴더의 웹루트로 서비스 됩니다.
- links : link 를 통해서 링크들입니다.
- unlink : link 한 것을 삭제 합니다.
- secure : https 처리로 접속하게 셋팅합니다.
- share : ngrok(https://ngrok.com/) 로 외부네트워크에 접속하게 통로를 만들어 줍니다. 다른 팀원이 개발 내용을 확인한다거나, 모바일로 api 접근할때 유용합니다. 한국의 경우 valet share --region=ap 로 접속하는게 좋습니다.
laravel new blog
cd $_
git init
git add .
git commit -m "First Commit"
빈 파일 하나 만듭니다 : databases/database.sqlite
Edit .env
# DB_CONNECTION=mysql
# DB_HOST=127.0.0.1
# DB_PORT=3306
# DB_DATABASE=homestead
# DB_USERNAME=homestead
# DB_PASSWORD=secret
DB_CONNECTION=sqlite
# for 5.8 below
php artisan make:auth
# for 6.0 above
# reference : https://laravel-news.com/running-make-auth-in-laravel-6
composer require laravel/ui
php artisan ui vue --auth
npm install
npm run prod
# or
yarn install
yarn run prod
Psy Shell v0.8.17 (PHP 7.1.6 — cli) by Justin Hileman
>>> $user = new App\User
>>> $user->name = 'admin'
>>> $user->email = '[email protected]'
>>> $user->password = bcrypt('admin')
>>> $user->save()
http://blog.test 접속해서 로그인 테스트 하면 됩니다.