Linux PHP デバッグ環境を構築する方法: 1. MySQL をダウンロードしてインストールします; 2. php-fpm を有効にしてポート 9000 をリッスンします; 3. PHP を解凍し、コンパイルしてインストールします; 4. 構成ファイルを変更し、 Nginxをインストールします。
この記事の動作環境: 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
https://www.php.net/downloads.phpwget https://www.php.net/distributions/php-7.1.33.tar.gz
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
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
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
vim /usr/local/php/lib/php.ini 修改参数为:cgi.fix_pathinfo=0
d. 以下は PHP マニュアルとは異なります: (次の機能は、fpm に PHP-FPM ユーザー グループを読み取って設定させるためのものです)
実際、マニュアルには、/usr/local/etc/php-fpm.conf にはユーザー グループ設定オプションがまったくないと記載されています。手動で追加すると、ファイルが見つからない、または Depressed であることが報告されます。このように設定する必要があります。Create Web user:groupadd www-data useradd -g www-data www-data
php- fpm.conf
vim /usr/local/php/etc/php-fpm.conf
include=NONEl/etc/php-fpm.d/*.conf
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
/usr/local/bin/php-fpm
netstat -tln | grep 9000
3. インストールNginx
Nginx の中国語ドキュメントは私を混乱させますhttp://www.nginx.cn/installhttp://www.nginx.cn/doc/setup/nginx-ubuntu.html
http://nginx.org/en/download.html
tar -zxvf cd ./configure --prefix=/usr/local/nginx make make install
設定ファイルを実行する必要があります 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
リファレンス マニュアル
http://php.net/manual/zh/install.pecl.phpize.php
cd /home/username/php7.0.29/ext cd curl phpize ./configure --with-php-config=/usr/local/php/bin/php-config make make install
sudo apt-get install autoconf
1. ルート ディレクトリで httpd.conf ファイルを見つけます:
find / -name httpd.conf
grep -r magic /usr/src
尾行模式:/content Enter
sudo pkill php-fpm
./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 サイトの他の関連記事を参照してください。