Rumah >pembangunan bahagian belakang >masalah PHP >Apakah yang perlu saya lakukan jika mac nginx tidak menyokong php?

Apakah yang perlu saya lakukan jika mac nginx tidak menyokong php?

藏色散人
藏色散人asal
2021-09-18 09:08:342199semak imbas

Mac nginx tidak menyokong php kerana PHP tidak dikonfigurasikan penyelesaiannya ialah: 1. Gunakan homebrew untuk memasang nginx 2. Tetapkan hak pentadbir untuk nginx 3. Jalankan arahan "brew tap josegonzalez/homebrew-. php" Hanya pasang PHP.

Apakah yang perlu saya lakukan jika mac nginx tidak menyokong php?

Persekitaran pengendalian artikel ini: sistem macOS10.15, versi PHP5.6, komputer MacBook Air 2019

mac nginx Apakah yang perlu saya lakukan jika php tidak disokong?

Mac memasang Nginx dan mengkonfigurasi PHP

Saya menggunakan Apache dan PHP untuk bekerjasama sebelum ini

Oleh kerana PHP diajar sendiri, ramai Saya tidak faham (saya tidak membaca banyak tentang TP, ia tidak berguna)

Saya baru-baru ini mahu menggunakan nginx dan php untuk menulis sesuatu bersama

Kerana saya telah memasangnya pada saya komputer, dan saya menghadapi beberapa masalah semasa proses itu, sementara saya masih mempunyai beberapa tera, rekodkannya sekarang Jika anda menggunakan nginx dan php untuk membangunkan pada masa hadapan, anda boleh merujuknya

1. Gunakan yum untuk. pasang perisian pada Linux, dan anda akan melihat homebrew pada Mac

2 Kemudian kami menggunakan homebrew untuk memasang nginx

Satu arahan untuk melengkapkan pemasangan:

brew install nginx
Kemudian kami mengkonfigurasi kebenaran

1> Sediakan hak Pentadbir nginx: Jika hak pentadbir tidak ditetapkan, port 80 tidak boleh dipantau

#这里的目录根据你实际安装的目录来填写,默认是这个目录,不同的只是nginx的版本号而已
sudo chown root:wheel /usr/local/Cellar/nginx/1.10.1/bin/nginx    
sudo chmod u+s /usr/local/Cellar/nginx/1.10.1/bin/nginx
2>Tambah kawalan permulaan launchctl

mkdir -p ~/Library/LaunchAgents
cp /usr/local/opt/nginx/homebrew.mxcl.nginx.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
3>Jalankan nginx

sudo nginx #打开 nginx
nginx -s reload|reopen|stop|quit  #重新加载配置|重启|停止|退出 nginx
nginx -t   #测试配置是否有语法错误
3 Pasang PHP

Oleh kerana brew tidak mempunyai pakej php secara lalai, kami mula-mula melaksanakan arahan berikut

brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
Terdapat banyak versi php dan kita boleh menggunakan brew search php untuk melihat

Komputer saya mempunyai php5.6, tetapi saya menggunakan brew untuk memasangnya. Ia tidak akan menjejaskan komputer yang disertakan mac, kerana ia akan dipasang di bawah /usr/local/Cellar

brew install php56
Selepas pemasangan selesai, untuk membolehkan sistem menggunakan versi yang baru saya pasang, ia perlu dikonfigurasikan

sudo vim ~/.bash_profile

#在这个文件最后添加下列语句:
export PATH="$(brew --prefix php56)/bin:$PATH"

#保存文件后,source下这个文件,使刚刚添加的环境变量生效
source ~/.bash_profile
Selepas pemasangan selesai, anda boleh menggunakan php -v dalam terminal untuk melihat versi, iaitu versi yang saya baru pasang Versi

Tambah kawalan permulaan launchctl

mkdir -p ~/Library/LaunchAgents
cp /usr/local/opt/php56/homebrew.mxcl.php56.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php56.plist
Laluan fail konfigurasi php adalah seperti berikut

/usr/local/etc/php/5.6/php.ini
/usr/local/etc/php/5.6/php-fpm.conf
Selepas saya menyelesaikan ini, saya pergi untuk mengujinya terus menggunakan php

Tetapi perkhidmatan nginx adalah normal, tetapi php tidak dipaparkan

Sebabnya saya terlalu tidak sabar dan nginx belum lagi menyediakan php

Laluan fail konfigurasi nginx adalah seperti berikut

/usr/local/etc/nginx/nginx.conf

Selepas membukanya, cari blok berikut

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}
Nyahkomennya, mulakan semula nginx dan ia masih tidak berfungsi, saya mencari sebabnya, kerana [/scripts$fastcgi_script_name;] ayat ini sepatutnya [$document_root$fastcgi_script_name;]

Kemudian mulakan semula nginx dan anda boleh mengakses php

Saya masih ingat bahawa saya menghadapi beberapa masalah kecil apabila saya memulakan php-fpm, dan kandungan masalah semua dalam terminal

dipaparkan Contohnya: [/private/etc/php-fpm.conf] Fail ini tidak wujud, terdapat fail dengan akhiran [.default] di direktori yang sama. Mari salin ini dan tukar kepada php-fpm.conf sudah cukup

Jika anda melaksanakannya kemudian, laluan error_log mungkin tidak betul. tetapi jalannya tidak dijumpai. Terdapat dua cara.

1》Jika ada folder yang tidak wujud, kami akan menciptanya

2》Tukar fail php-fpm.conf yang baru kami salin dan cari tempat yang serupa dengan yang berikut

[global]
; Pid file
; Note: the default prefix is /usr/var
; Default Value: none
pid = /usr/local/var/php-fpm/run/php-fpm.pid

; Error log file
; If it's set to "syslog", log is sent to syslogd instead of being written
; in a local file.
; Note: the default prefix is /usr/var
; Default Value: log/php-fpm.log
error_log = /usr/local/var/php-fpm/log/php-fpm.log
pid dan error_log telah diulas sebelum ini.

Kami boleh mengkonfigurasi nama domain akses kami sendiri dengan mengubah suai nginx.conf dan fail hos

Pembelajaran yang disyorkan: "

Tutorial Video PHP

"

Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika mac nginx tidak menyokong php?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn