Heim >Backend-Entwicklung >PHP-Tutorial >Detaillierte Erläuterung der Schritte zum Aufbau einer LNMP-Entwicklungsumgebung unter Mac OS
1. Übersicht
LinuxNginx+MySQL steht +PHP ist eine Website-Server-Architektur. Linux ist die Sammelbezeichnung für eine Klasse von Unix-Computerbetriebssystemen und derzeit das beliebteste freie Betriebssystem. Zu den repräsentativen Versionen gehören: Debian, Centos, Ubuntu, Fedora, Gentoo usw. Nginx ist ein leistungsstarker HTTP- und Reverse-Proxy-Server sowie ein IMAP/POP3/SMTP-Proxy-Server. MySQL ist ein kleines relationales Datenbankverwaltungssystem. PHP ist eine Skriptsprache, die serverseitig ausgeführt und in HTML-Dokumente eingebettet wird. Diese vier Arten von Software sind alle kostenlose und Open-Source-Software. In Kombination ergeben sie ein kostenloses, effizientes und skalierbares Website-Servicesystem. Werfen wir einen Blick auf die Details dieses Artikels.
2. Homebrew installieren
Der Befehl von centOS ist derselbe wie der Befehl yum
von Ubuntu. Mit dem Befehl apt-get
können wir einige Softwarepakete schnell installieren. brew
Der Befehl zum Installieren von Homebrew über die Befehlszeile lautet wie folgt:
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"Verwenden Sie
, um zu überprüfen, ob ein Konflikt vorliegt, und verwenden Sie dann brew doctor
um das Gebräu zu verbessern. brew update && brew upgrade
3. Nginx installieren
brew install nginxWenn Sie Port 80 verwenden müssen, müssen Sie Nginx zur Stammgruppe hinzufügen:
sudo cp -v /usr/local/opt/nginx/*.plist /Library/LaunchDaemons/ sudo chown root:wheel /Library/LaunchDaemons/homebrew.mxcl.nginx.plistDann verwenden Sie den Befehl, um den Nginx-Dienst zu starten:
sudo nginxTest ob Nginx erfolgreich installiert wurde, weil Die Standardkonfigurationsdatei
überwacht Port 8080. Stellen Sie daher zuerst eine Anfrage an Port 8080:
curl -IL http://www.php.cn/:8080Das Ergebnis sollte etwa wie folgt aussehen:
HTTP/1.1 200 OK Server: nginx/1.9.1 Date: Fri, 29 May 2015 14:50:47 GMT Content-Type: text/html Content-Length: 612 Last-Modified: Fri, 29 May 2015 14:40:47 GMT Connection: keep-alive ETag: "5444dea7-264" Accept-Ranges: bytesnginx bezogen Der Vorgang ist wie folgt:
sudo nginx //启动nginx sudo nginx -s reload|reopen|quit //重新加载|重启|退出
4. Installieren Sie php-fpm
brew tap homebrew/dupes brew tap homebrew/phpInstallieren Sie dann PHP-FPM und geben Sie den Befehl ein:
brew install php56 --whitout-apache --with-imap --with-tidy --with-debug --with-pgsql --with-mysql --with-fpmDie Das Programm wird automatisch installiert. Warten Sie einige Minuten, bis die Installation abgeschlossen ist. Nachdem die Installation abgeschlossen ist, müssen Sie PHP zu
hinzufügen: $PATH
# 如果使用bash的话 vim ~/.bash_profile export PATH="/usr/local/sbin:$PATH" source ~/.bash_profile # 如果使用ZSH的话 vim ~/.zshrc export PATH="/usr/local/sbin:$PATH" source ~/.zshrcDann können Sie php-fpm so einstellen, dass es beim Booten automatisch startet:
mkdir -p ~/Library/LaunchAgents ln -sfv /usr/local/opt/php56/homebrew.mxcl.php56.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php56.plistVerwenden Sie den folgenden Befehl, um zu überwachen, ob php-fpm erfolgreich gestartet wird:
lsof -Pni4 | grep LISTEN | grep phpWenn es erfolgreich gestartet wird, sollte eine Ausgabe ähnlich der folgenden angezeigt werden:
php-fpm 27578 wenzhiquan 9u IPv4 0xf29f8b26c08fc27 0t0 TCP 127.0.0.1:9000 (LISTEN) php-fpm 27628 wenzhiquan 0u IPv4 0xf29f8b26c08fc27 0t0 TCP 127.0.0.1:9000 (LISTEN) php-fpm 27629 wenzhiquan 0u IPv4 0xf29f8b26c08fc27 0t0 TCP 127.0.0.1:9000 (LISTEN) php-fpm 27630 wenzhiquan 0u IPv4 0xf29f8b26c08fc27 0t0 TCP 127.0.0.1:9000 (LISTEN)
5. MySQL installieren
brew install mysqlEbenso können Sie MySQL so einstellen, dass es startet automatisch beim Booten:
ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plistFühren Sie dann eine sichere Installation von MySQL durch. Verwenden Sie die folgenden Befehle, um das Root-Passwort zu ändern, anonyme Benutzer zu löschen, Remote-Verbindungen zu schließen usw.:
mysql_secure_installationDann wird folgender Inhalt ausgegeben:
> Enter current password for root (enter for none): //默认没有密码,直接回车即可 > Change the root password? [Y/n] //是否更改root密码,选择是,然后输入并确认密码 > Remove anonymous users? [Y/n] //是否删除匿名用户,选择是 > Disallow root login remotely? [Y/n] //是否禁止远程登录,选择是 > Remove test database and access to it? [Y/n] //是否删除test数据库,选择是 > Reload privilege tables now? [Y/n] //是否重载表格数据,选择是Testen Sie, ob die Datenbank erfolgreich installiert wurde:
mysql -u root -pGeben Sie dann das soeben festgelegte Root-Passwort ein, folgender Inhalt wird ausgegeben :
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> exit //输入exit退出数据库
6. Nginx konfigurieren
mkdir -p /usr/local/etc/nginx/logs mkdir -p /usr/local/etc/nginx/sites-available mkdir -p /usr/local/etc/nginx/sites-enabled mkdir -p /usr/local/etc/nginx/conf.d mkdir -p /usr/local/etc/nginx/ssl sudo mkdir -p /var/www sudo chown :staff /var/www sudo chmod 775 /var/wwwDann ändern Sie die Nginx-Konfigurationsdatei:
vim /usr/local/etc/nginx/nginx.confErsetzen Sie den Inhalt durch:
worker_processes 1; error_log /usr/local/etc/nginx/logs/error.log debug; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /usr/local/etc/nginx/logs/access.log main; sendfile on; keepalive_timeout 65; index index.html index.php; include /usr/local/etc/nginx/sites-enabled/*; }Erstellen Sie dann die PHP-FPM-Konfiguration Datei:
vim /usr/local/ect/nginx/conf.d/php-fpmGeben Sie den folgenden Inhalt ein:
location ~ \.php$ { try_files $uri = 404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param script_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }Fügen Sie dann die Site-Konfigurationsdatei hinzu:
vim /usr/local/ect/nginx/sites-enabled/defaultGeben Sie den folgenden Inhalt ein:
server { listen 80; server_name localhost; root /var/www/; access_log /usr/local/etc/nginx/logs/default.access.log main; location / { include /usr/local/etc/nginx/conf.d/php-fpm; } location = /info { allow 127.0.0.1; deny all; rewrite (.*) /.info.php; } error_page 404 /404.html; error_page 403 /403.html; }Starten Sie nginx neu. Die Konfiguration ist zum Testen abgeschlossen
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Schritte zum Aufbau einer LNMP-Entwicklungsumgebung unter Mac OS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!