ホームページ  >  記事  >  バックエンド開発  >  Linux PHPデバッグ環境をセットアップする方法

Linux PHPデバッグ環境をセットアップする方法

藏色散人
藏色散人オリジナル
2021-12-08 09:32:052183ブラウズ

Linux PHP デバッグ環境を構築する方法: 1. MySQL をダウンロードしてインストールします; 2. php-fpm を有効にしてポート 9000 をリッスンします; 3. PHP を解凍し、コンパイルしてインストールします; 4. 構成ファイルを変更し、 Nginxをインストールします。

Linux PHPデバッグ環境をセットアップする方法

この記事の動作環境: ubuntu 16.04 システム、PHP バージョン 7.1、Dell G3 コンピューター。

Linux PHP デバッグ環境をセットアップするにはどうすればよいですか?

Linux PHP 開発環境のクイックセットアップ

構築された環境は LNMP:

1. MySQL をインストールします

これは非常に簡単です。私は Ubuntu を使用しているので、apt ソースを使用し、deb ファイルをダウンロードして、新しいインストール ドキュメントの順序に従ってください: a. apt ライブラリを追加 b. apt ライブラリを更新 cインストール d. MySQL

Download:

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

Documentation:

https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/#apt-repo-fresh-install

2, PHP

# を実行します。 #here php-fpm をオンにして、ポート 9000 をリッスンします。

関連ドキュメント:

http://php.net/manual/zh/install.unix.nginx.php
a. ダウンロード

https://www.php.net/downloads.phpwget https://www.php.net/distributions/php-7.1.33.tar.gz
ローカルにダウンロードする画像を選択するか、ダウンロード アドレスを取得してローカルにダウンロードします

b .解凍、コンパイル、インストール

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
制御を効率化している場合は、インストール ディレクトリが存在するように --prefix を追加する必要があります

順番に実行するときに発生する問題zlib と libxml2 が存在しない場合は、Baidu の公式 Web サイトに直接アクセスして、tar.gz 形式のインストール パッケージの最新バージョンを入手し、解凍してコンパイルしてインストールします。

swooleの入門マニュアル

https://linkeddestiny.gitbooks.io/easy-swoole/content/book/chapter01/install.html
./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
c. インストール完了後の設定ファイル(公式ドキュメントはこちらに移動しました)の一行一行は忘れられません

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
Interlude: Prevent ファイルが存在しない場合、悪意のあるスクリプト インジェクションによる攻撃を避けるために、Nginx はバックエンド PHP-FPM モジュールにリクエストを送信できなくなります

vim /usr/local/php/lib/php.ini
修改参数为:cgi.fix_pathinfo=0
vim に詳しくないので、sudo をお勧めしますatom または sudo sublime. グラフィカル インターフェイス ソフトウェアを開きます。

d. 以下は PHP マニュアルとは異なります: (次の機能は、fpm に PHP-FPM ユーザー グループを読み取って設定させるためのものです)

実際、マニュアルには、/usr/local/etc/php-fpm.conf にはユーザー グループ設定オプションがまったくないと記載されています。手動で追加すると、ファイルが見つからない、または Depressed であることが報告されます。このように設定する必要があります。

Create Web user:

groupadd www-data
useradd -g www-data www-data
Open

php- fpm.conf

vim /usr/local/php/etc/php-fpm.conf
最後の行を見つけます:

include=NONEl/etc/php-fpm.d/*.conf
NONE を実際のパスに変更します:

include=/usr/local/php/etc/php-fpm.d/*.conf
次に、ユーザー グループとユーザー情報をこの通常のパスに追加します。一致する構成ファイル:

cd /usr/local/php/etc/php-fpm.d
sudo cp www.conf.default www.conf
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
FPM

/usr/local/bin/php-fpm
e を有効にして、成功したかどうかを確認します:

netstat -tln | grep 9000
TCP 9000 LISTEN が表示された場合は、構成が成功したことを意味します。出力がない場合は、ポート 9000 がリッスンしていないことを意味します。もう一度お試しください。

3. インストールNginx

Nginx の中国語ドキュメントは私を混乱させます

http://www.nginx.cn/installhttp://www.nginx.cn/doc/setup/nginx-ubuntu.html
これら 2 つのバージョンが古すぎる、PHP5 か何か、またはインストールするにはパラメータが多すぎます。いつも色々な問題があり、apt をインストールするのは好きではありませんが、少なくともバージョン選択の自由度があまりなく、削除するには apt を使用する必要があるため、最も簡単な方法でインストールしました。コンパイルしてインストールします

ダウンロード

http://nginx.org/en/download.html
お好みのバージョンを選択してダウンロードしてください

tar -zxvf 
cd 
./configure --prefix=/usr/local/nginx
make 
make install
設定中に zlib などのソフトウェアが存在しないというメッセージが表示された場合は、Baidu ダウンロード tarパッケージを解凍し、

インストール ディレクトリにインストールします。 回答:

インストールが完了したら、/usr/local/nginx

構成ファイル: /usr/ に移動します。 local/nginx/conf/nginx .conf

仮想ホストファイルディレクトリ:/usr/local/nginx/html

実行ファイル:/usr/local/nginx/sbin/nginx

設定ファイルを実行する必要があります a.index.html の後に Index.php を追加するだけです b. .php ルールに準拠している場合は、ポート 9000 に渡します

ポートは使用しますデフォルトの nginx:80 php:9000 と仮想ホスト ディレクトリはデフォルトの /usr/local/nginx/html

合計 2 つの場所が設定されています:

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

#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;#}
さて、次に進みます。実行ディレクトリ

sudo ./nginx -s reopen
nginx

html ディレクトリを起動し、新しいテストを作成します PHP ブラウザに localhost/text.php と入力すると、設定が成功したことがわかります。

#PHP 拡張機能のインストール:

リファレンス マニュアル

http://php.net/manual/zh/install.pecl.phpize.php
実行プロセスは次のとおりです。コンパイルに使用される PHP ソース コード パッケージを入力し、関連する拡張ディレクトリを入力すると、phpize が設定ファイル ./configure, make && make install

cd /home/username/php7.0.29/ext
cd curl
phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
を生成します。autoconf エラーが発生する可能性があります。ubuntu の場合は、次のコマンドを実行します。次に、lib.php/ini に移動し、拡張機能のコメントを削除します:

sudo apt-get install autoconf

Linux の簡単で一般的に使用される手順:

1. ルート ディレクトリで httpd.conf ファイルを見つけます:

find / -name httpd.conf
2. /usr/src ディレクトリにあるファイルを表示します ファイル (サブディレクトリを含む) Contains magic行、この検索はファイルの内容です:

grep -r magic /usr/src
3. VIM エディタの検索内容
尾行模式:/content Enter
4.php- fpm のプロセスは閉じられています

sudo pkill php-fpm
5. MySQLIのインストール

./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视频教程

以上がLinux PHPデバッグ環境をセットアップする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。