一、macインストールnginx php 7 mysql環境
4339 ワード
Homebrew公式サイト
国内Homebrewミラー、ミラーソースの交換加速:
インストール起動nginx
nginx仮想ホストを構成し、ドメイン名でローカルWebプロジェクトにアクセス
ブラウザアドレスバー入力アドレス、リクエストフロー
例:http://www.dtemp.com/test.phpurlには次のものが含まれます.プロトコル【http/http等】 ip/ドメイン名【www.dtemp.com】ポート【80/8080など、デフォルト80は省略可能】 uri【/test.php】
ブラウザのアドレスバーにurlを入力して車に戻ると、要求が送信され、まず本機hostsに行ってそのドメイン名に対応するipを探し、なければdnsドメイン名サーバーを探し、対応するipを手に入れ、ネットワークでアクセスするパソコンを見つけ、uriはターゲットパソコンにアクセスするリソースの道を説明した.
本機hostsを探して、www.dtempを発見した.com対応ipは127.0.0.1、すなわち本機であり、我々が使用するnginx構成は80ポートを傍受するので、要求はnginxに受信される.nginxはwebルートディレクトリの構成とuri/testに基づいている.phpで、リソースを見つけることができます.リクエストがphpファイルであることが判明すると、リクエストは9000ポートに転送され、php−fpmに渡される.php-fpm処理が完了するとnginxに戻り、nginxは結果をhttpでブラウザに返す
インストールphpの検索
Laravel環境の要件は以下の通りで、testを新規作成します.phpはwebディレクトリでphpの構成や拡張などの情報がはっきり見えます
mysqlをインストールして、公式サイトを通じてコミュニティ版をダウンロードしますhttps://dev.mysql.com/downloads/mysql/
navicatはmysqlデータベースを表示するのに便利で、ダウンロードアドレスをお勧めします.https://xclient.info/search/s/navicat/
ユーザーを作成し、ライブラリの権限をユーザーに割り当てます.プロジェクトでrootアカウントを使用しないでください.
//
brew -v
// homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
国内Homebrewミラー、ミラーソースの交換加速:
cd "$(brew --repo)"
git remote set-url origin https://mirrors.ustc.edu.cn/brew.git
brew update
brew -v
インストール起動nginx
brew cleanup //
brew install nginx
// nginx, nginx, , logs
sudo nginx //
//
ps -ef|grep nginx
nginx -V
sudo nginx -s reload //
sudo nginx -s stop //
lsof -i tcp:80 // 80
ps aux | grep nginx // nginx
nginx仮想ホストを構成し、ドメイン名でローカルWebプロジェクトにアクセス
// url, hosts ip
vi /private/etc/hosts
127.0.0.1 www.dtemp.com
// nginx ,
// /usr/local/etc/nginx/nginx.conf }
include servers/*;
vi /usr/local/etc/nginx/servers/dtemp
server {
listen 80;
server_name www.dtemp.com;
root /Users/free/www/learnlaravel/;
access_log /usr/local/var/logs/nginx/dtemp.access.log;
location / {
if (!-e $request_filename){
rewrite ^/(.*) /index.php last;
}
index index.html index.htm index.php;
autoindex on;
include /usr/local/etc/nginx/conf.d/php-fpm;
}
}
// /usr/local/etc/nginx/conf.d/php-fpm :
location ~ \.php$ {
try_files $uri = 404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_intercept_errors on;
include /usr/local/etc/nginx/fastcgi.conf;
}
// nginx .php php ,
// 9000 , php-fpm ,
// php , www.dtemp.com 502
ブラウザアドレスバー入力アドレス、リクエストフロー
例:http://www.dtemp.com/test.phpurlには次のものが含まれます.
ブラウザのアドレスバーにurlを入力して車に戻ると、要求が送信され、まず本機hostsに行ってそのドメイン名に対応するipを探し、なければdnsドメイン名サーバーを探し、対応するipを手に入れ、ネットワークでアクセスするパソコンを見つけ、uriはターゲットパソコンにアクセスするリソースの道を説明した.
本機hostsを探して、www.dtempを発見した.com対応ipは127.0.0.1、すなわち本機であり、我々が使用するnginx構成は80ポートを傍受するので、要求はnginxに受信される.nginxはwebルートディレクトリの構成とuri/testに基づいている.phpで、リソースを見つけることができます.リクエストがphpファイルであることが判明すると、リクエストは9000ポートに転送され、php−fpmに渡される.php-fpm処理が完了するとnginxに戻り、nginxは結果をhttpでブラウザに返す
インストールphpの検索
brew search php
brew install [email protected]
php -v //
php -m //
// php7 , guid,
// brew services start [email protected] php-fpm
The php.ini and php-fpm.ini file can be found in:
/usr/local/etc/php/7.2/
[email protected] is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.
If you need to have [email protected] first in your PATH run:
//* , php7
echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.bash_profile
echo 'export PATH="/usr/local/opt/[email protected]/sbin:$PATH"' >> ~/.bash_profile
For compilers to find [email protected] you may need to set:
export LDFLAGS="-L/usr/local/opt/[email protected]/lib"
export CPPFLAGS="-I/usr/local/opt/[email protected]/include"
To have launchd start [email protected] now and restart at login:
brew services start [email protected]
Or, if you don't want/need a background service you can just run:
php-fpm
Laravel環境の要件は以下の通りで、testを新規作成します.phpはwebディレクトリでphpの構成や拡張などの情報がはっきり見えます
PHP >= 7.1.3
OpenSSL PHP Extension
PDO PHP Extension
Mbstring PHP Extension
Tokenizer PHP Extension
XML PHP Extension
Ctype PHP Extension
JSON PHP Extension
BCMath PHP Extension
test.php :
mysqlをインストールして、公式サイトを通じてコミュニティ版をダウンロードしますhttps://dev.mysql.com/downloads/mysql/
brew , dmg next , 。
mysql ,mysql8 , , 。
navicatはmysqlデータベースを表示するのに便利で、ダウンロードアドレスをお勧めします.https://xclient.info/search/s/navicat/
ユーザーを作成し、ライブラリの権限をユーザーに割り当てます.プロジェクトでrootアカウントを使用しないでください.
//* mac mysql
cd /usr/local/mysql-8.0.15-macos10.14-x86_64/bin
./mysql // mysql
use mysql;// mysql
// freeuser ,% ,ip 。
CREATE USER 'freeuser'@'%' IDENTIFIED BY 'free99';
// learnlaravel freeuser
GRANT ALL PRIVILEGES ON learnlaravel.* TO 'freeuser'@'%';