Heim  >  Artikel  >  Backend-Entwicklung  >  So richten Sie eine Linux-PHP-Debugging-Umgebung ein

So richten Sie eine Linux-PHP-Debugging-Umgebung ein

藏色散人
藏色散人Original
2021-12-08 09:32:052183Durchsuche

So richten Sie die Linux-PHP-Debugging-Umgebung ein: 1. Laden Sie MySQL herunter und installieren Sie es. 2. Aktivieren Sie PHP-FPM und hören Sie auf Port 9000. 4. Ändern Sie die Konfigurationsdatei und installieren Sie Nginx.

So richten Sie eine Linux-PHP-Debugging-Umgebung ein

Die Betriebsumgebung dieses Artikels: Ubuntu 16.04-System, PHP-Version 7.1, Dell G3-Computer.

Wie richte ich eine Linux-PHP-Debugging-Umgebung ein?

Linux PHP-Entwicklungsumgebung ist schnell etabliert

Die erstellte Umgebung ist LNMP:

1. Installieren Sie MySQL

Das ist sehr einfach. Ich verwende Ubuntu, also verwende apt source und lade die Deb-Datei herunter und folgen Sie dann dem neuen Installationsdokument: a. Apt-Bibliothek hinzufügen. c. Installieren Sie MySQL -fpm hier, lauscht auf Port 9000.

Zugehörige Dokumente:

https://dev.mysql.com/downloads/repo/apt/

a. Wählen Sie ein Bild zum lokalen Herunterladen aus oder rufen Sie die Download-Adresse ab und laden Sie es dann lokal herunter

b. Sie müssen es hinzufügen --prefix, damit das Installationsverzeichnis vorhanden istZu den Problemen, die bei der Ausführung in der Reihenfolge auftreten, gehört das Problem, dass pcre, zlib und libxml2 nicht vorhanden sind. Rufen Sie dann direkt die offizielle Website von Baidu auf Laden Sie die neueste Version des Installationspakets im tar.gz-Format herunter und entpacken Sie es, kompilieren und installieren Sie es. swooles Einführungshandbuch

https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/#apt-repo-fresh-install
http://php.net/manual/zh/install.unix.nginx.php

c Nach Abschluss der Installation kann die Konfigurationsdatei (das offizielle Dokument wird hier kopiert) nicht vergessen werden

https://www.php.net/downloads.phpwget https://www.php.net/distributions/php-7.1.33.tar.gz

Zwischenspiel: Um zu verhindern, dass die Datei nicht vorhanden ist, verhindern Sie, dass Nginx gesendet wird die Anfrage an das Backend-PHP-FPM-Modul auf der Clientseite, um einen Angriff durch bösartige Skriptinjektion zu vermeiden

tar zxf php-x.x.x
cd ../php-x.x.x./configure --prefix=/usr/local/php --enable-fpm --enable-pdo --with-pdo-mysql --enable-mysqlnd --with-mysqli --with-opensslmake
sudo make install

Da ich mit vim nicht vertraut bin, wird empfohlen, es mit grafischer Schnittstellensoftware wie sudo atom oder sudo sublime zu öffnen.

d, das Folgende ist nicht dasselbe wie das PHP-Handbuch. Das Gleiche ist: (Die folgende Funktion besteht darin, fpm PHP-FPM-Benutzergruppen und -Benutzer lesen und konfigurieren zu lassen und den Überwachungsport 9000 zu öffnen)

Tatsächlich heißt es im Handbuch, dass /usr/local/etc/php-fpm.conf überhaupt keine Benutzerkonfigurationsoptionen hat. Wenn sie manuell hinzugefügt werden, wird gemeldet, dass die Datei nicht gefunden werden kann, was sehr deprimierend ist Gehen Sie folgendermaßen vor

Erstellen Sie einen Webbenutzer:

https://linkeddestiny.gitbooks.io/easy-swoole/content/book/chapter01/install.html

Öffnen Sie

php-fpm.conf

./configure --prefix=/usr/local/php \
--with-config-file-path=/etc/php \
--enable-fpm \
--enable-pcntl \
--enable-mysqlnd \
--enable-opcache \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-shmop \
--enable-zip \
--enable-soap \
--enable-xml \
--enable-mbstring \
--disable-rpath \
--disable-debug \
--disable-fileinfo \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-pcre-regex \
--with-iconv \
--with-zlib \
--with-mcrypt \
--with-gd \
--with-openssl \
--with-mhash \
--with-xmlrpc \
--with-curl \
--with-imap-ssl

Finden Sie die Endzeile:

sudo cp php.ini-development /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp sapi/fpm/php-fpm /usr/local/php/bin

Ändern Sie NONE in den tatsächlichen Pfad:

vim /usr/local/php/lib/php.ini
修改参数为:cgi.fix_pathinfo=0
Fügen Sie dann die Benutzergruppe und die Benutzerinformationen hinzu zur regulären passenden Konfigurationsdatei:
groupadd www-data
useradd -g www-data www-data
vim /usr/local/php/etc/php-fpm.conf
Suchen Sie die Benutzereinstellungen und ändern Sie den Inhalt wie folgt:

include=NONEl/etc/php-fpm.d/*.conf

Aktivieren Sie FPM

include=/usr/local/php/etc/php-fpm.d/*.conf

e, prüfen Sie, ob es erfolgreich ist:

cd /usr/local/php/etc/php-fpm.d
sudo cp www.conf.default www.conf

Wenn Sie TCP 9000 LISTEN sehen, bedeutet das Die Konfiguration ist erfolgreich. Wenn keine Ausgabe erfolgt, bedeutet dies, dass der 9000-Port nicht zuhört. Bitte versuchen Sie es erneut Diese Versionen sind zu alt, es gibt immer verschiedene Probleme bei der Installation von PHP5 oder so oder es gibt zu viele Parameter, und ich mag die Installation von apt nicht, zumindest habe ich nicht so viel Freiheit bei der Versionsauswahl, und das habe ich Um apt zum Löschen zu verwenden, habe ich es auf die einfachste Art und Weise installiert, nämlich herunterzuladen, zu kompilieren und zu installieren zlib existiert nicht, laden Sie einfach das TAR-Paket von Baidu herunter, entpacken und installieren Sie es. Ja Antwort im Installationsverzeichnis:

Nach der Installation in /usr/local/nginx

Konfigurationsdatei: /usr/local/nginx/conf/ nginx.conf

Virtuelles Hostdateiverzeichnis: /usr/local/nginx/ html

Ausführungsdatei: /usr/local/nginx/sbin/nginx

Was die Konfigurationsdatei tun muss, ist index.php nach a hinzuzufügen. index.html b. Wenn es den .php-Regeln entspricht, übergeben Sie es an den Port 9000. Das standardmäßige virtuelle Hostverzeichnis nginx:80 php:9000 verwendet den Standardwert /usr/local/nginx/html

A Insgesamt sind zwei Orte konfiguriert:

vim /usr/local/php/etc/php-fpm.d/www.conf
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group;       will be used.
user = www-data
group = www-data

Okay, jetzt gehen Sie in das Ausführungsverzeichnis

/usr/local/bin/php-fpm

Starten Sie die Erstellung des Nginx-HTML-Verzeichnisses. Geben Sie localhost/text.php in den test.php-Browser ein und Sie werden sehen, dass die Konfiguration erfolgreich ist.

PHP-Erweiterungsinstallation:

Referenzhandbuch

netstat -tln | grep 9000
Der Ausführungsprozess ist: Geben Sie den PHP-Quellcode ein, der während der Kompilierung verwendet wird. Wenn die Erweiterung des Pakets in das entsprechende Erweiterungsverzeichnis gelangt, generiert phpize die Konfigurationsdatei , ./configure, make && make install

http://www.nginx.cn/installhttp://www.nginx.cn/doc/setup/nginx-ubuntu.html
Wenn es sich um Ubuntu handelt, führen Sie es einfach direkt aus und gehen Sie dann zu lib.php/ini, um die Erweiterung hinzuzufügen. Entfernen Sie einfach die Kommentare:

http://nginx.org/en/download.html

Linux Einfache und häufig verwendete Anweisungen:

1. Suchen Sie die Datei httpd.conf im Stammverzeichnis:

tar -zxvf 
cd 
./configure --prefix=/usr/local/nginx
make 
make install
2. Zeigen Sie die

-Dateien im Verzeichnis /usr/src an (einschließlich Unterverzeichnissen)

Die Zeile Diese Suche enthält Magie und ist der Inhalt der Datei:

location / {
            root   html;
            index  index.html index.php index.htm;
        }

3. Suchinhalt des VIM-Editors

#location ~ \.php$ {#    root           html;#    fastcgi_pass   127.0.0.1:9000;#    fastcgi_index  index.php;#    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;#    include        fastcgi_params;#}
4. Der Prozess von PHP-FPM ist geschlossen

sudo ./nginx -s reopen
5. MySQLI-Installation

./configure –with-php-config=/usr/local/php/bin/php-config –with-mysqli=/usr/bin/mysql_config

php_config找不到

sudo apt-get install libmysqlclient-dev

 之后遇到make错误,mysqli.lo不存在,是因为某个.h文件未找到导致编译失败图示:

解决方案:

https://www.cnblogs.com/xiaoqian1993/p/6277771.html

6、ubuntu安装apt install资源占用

Could not get lock /var/lib/dpkg/lock!
sudo rm /var/cache/apt/archives/locksudo rm /var/lib/dpkg/lock

 7、简单的定时任务

ubuntu 设定定时器任务:1、
    将ubuntu中crontab的编译器切换到VIM
    export EDITOR=vim  
    修改后最好重启一下crontab    /etc/init.d/cron stop  
    /etc/init.d/cron start 

2、
    设定每一分钟向/home/hello.txt文本追加一个hello
    创建tesh.sh内容:
    echo hello >> /home/hello.txt
    创建文件hello.txt(注意所属用户、所属组、其他用户)的读写执行权限的分配.
    将.sh加入定时任务
    命令行输入 
    crontab -e
    编辑文本内容为    */1 * * * * sh /home/test.sh

 linux添加环境变量:

由于linux环境变量值中/usr/local/php并不属于,/usr/local/bin里面的倒是可以全局访问的,现在将php加入全局变量。

sudo vim /etc/profile//加入mysql、PHP的执行文件所在目录PATH=$PATH:/usr/local/php/bin:/usr/local/mysql/bin
export PATH//两行代码加到末尾然后执行以下指令使其生效source /etc/profile

 或者添加快捷方式形式:

ln -s /usr/local/mysql/bin/mysql_config /usr/local/bin/mysql_config

nginx.conf | laravel

#user  www-data;
worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    #gzip  on;
    #
    server {
        listen       8080;
        server_name  localhost;

        index index.html index.htm index.php;

        location / {
            root   /home/www/laravel/public;
            autoindex on;
            try_files $uri $uri/ /index.php?$query_string;
        }

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            root           /home/www/laravel/public;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }

    server {
        listen       80;
        server_name  localhost;

        index index.html index.htm index.php;

        location / {
            root   /home/www;
            autoindex on;
            try_files $uri $uri/ /index.php?$query_string;
        }

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            root           /home/www;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }


}

 composer安装

https://pkg.phpcomposer.com/#how-to-install-composer

推荐学习:《PHP视频教程

Das obige ist der detaillierte Inhalt vonSo richten Sie eine Linux-PHP-Debugging-Umgebung ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Kann PHP Methoden schreiben?Nächster Artikel:Kann PHP Methoden schreiben?