Linux での PHP 開発環境のセットアップ
Linux で PHP 開発環境を構築する方法: 最初に PHP、Apache、MySQL インストール パッケージを入手し、次に構成ファイルをコンパイル、インストール、変更し、次に環境変数を設定して起動時に自動的に開始し、最後にテストします。 PHP が正常にインストールされているかどうか。
推奨: 「PHP ビデオ チュートリアル 」
LAMP は現在非常に人気のある Web 開発環境です。 LAMP を構築する過程で多くの開発者はさまざまな問題に遭遇すると思いますが、その問題を考えると頭がパンクしそうですが、今日は皆さんの参考のために特別に PHP 開発環境の構築プロセスを記録しました。問題が見つかった場合は修正していただければ幸いです。
1. インストール パッケージを取得します
- PHP ダウンロード アドレス: http://cn.php.net/distributions/php-7.1.10.tar.gz
- Apache ダウンロード アドレス: http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.28.tar.gz
- MySQL ダウンロード アドレス: https://dev. mysql .com/get/Downloads/MySQL-5.7/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
2. Apache
1. をインストールします。依存関係 パッケージのインストール
1) コンパイラ gcc、gcc-c
をインストールします。yum install -y gcc gcc-c++ログイン後にコピー2) 依存関係パッケージ expat-devel、zlib-devel、openssl-devel
をインストールします。yum install -y expat-devel zlib-devel openssl-develログイン後にコピー2) 依存関係パッケージ apr
をインストールしますwget http://mirror.bit.edu.cn/apache//apr/apr-1.6.2.tar.gz tar zxvf apr-1.6.2.tar.gz cd apr-1.6.2 ./configure --prefix=/usr/local/apr make && make installログイン後にコピー3) 依存関係パッケージ apr-util
をインストールしますwget http://mirror.bit.edu.cn/apache//apr/apr-util-1.6.0.tar.gz tar zxvf apr-util-1.6.0.tar.gz cd apr-util-1.6.0 ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr make && make installログイン後にコピー4) 依存関係パッケージ pcre
をインストールしますwget https://ftp.pcre.org/pub/pcre/pcre-8.41.tar.gz tar zxvf pcre-8.41.tar.gz cd pcre-8.41 ./configure --prefix=/usr/local/pcre make && make installログイン後にコピー注: apr および apr-util インストール パッケージを Apache インストール パッケージの srclib ディレクトリにコピーします。
後続のバージョン番号を付けずに、それぞれ apr、apr-util という名前を付けます
2. インストールプロセス
1) Apache インストールパッケージを解凍します
tar zxvf httpd-2.4.28.tar.gzログイン後にコピー2)
をコンパイルしてインストールしますcd httpd-2.4.28 ./configure --prefix=/usr/local/server/apache \ --with-apr=/usr/local/apr \ --with-apr-util=/usr/local/apr-util \ --with-pcre=/usr/local/pcre \ --enable-so \ --enable-ssl \ --enable-deflate \ --enable-rewrite \ --enable-headers \ --enable-expires \ --disable-cgid\ --disable-cgi make && make installログイン後にコピー
3. 設定ファイル httpd.conf
を変更します。vim /usr/local/server/apache/conf/httpd.confログイン後にコピーServerName の前の
# を削除し、ServerName の後の URL を localhost:80
に変更します。 4. httpd をシステム サービスに追加し、起動時に自動的に開始されるように設定します。
1) httpd をシステム サービスに追加します
cp /usr/local/server/apache/bin/apachectl /etc/init.d/httpdログイン後にコピー2) /etc/init.d/httpd を変更し、次の内容を 3 行目に追加します
# chkconfig: 345 85 15 # description: Activates/Deactivates Apache Web Serverログイン後にコピー注: コード内の # は削除できません
3) システム サービスをブート時に自動的に開始するように設定します
systemctl enable httpdログイン後にコピー4) Apache を起動します
service httpd startログイン後にコピー
3. MySQL のインストール
1. インストール前の準備
1) インストールパッケージを解凍します
tar zxvf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.19-linux-glibc2.12-x86_64 /usr/local/server/mysqlログイン後にコピー2) ユーザーとユーザー グループを作成し、対応する権限を割り当てます
groupadd mysql useradd -r -g mysql mysql -s /sbin/nologinログイン後にコピー3) 依存関係をインストールします
yum -y install numactl.x86_64ログイン後にコピー
2. mysql の初期化と基本構成の作成
1) mysql の初期化
cd /usr/local/server/mysql bin/mysqld \ --initialize \ --user=mysql \ --basedir=/usr/local/server/mysql \ --datadir=/usr/local/server/mysql/data \ログイン後にコピー2) mysql
を設定するvim my.cnf # 创建配置文件ログイン後にコピーこの例は、mysql が正常に実行できることを確認するだけです。詳細な設定については、公式ドキュメントを参照してください
[mysqld] skip-grant-tables basedir = /usr/local/server/mysql datadir = /usr/local/server/mysql/data socket = /usr/local/server/mysql/data/mysql.sock log-error = /usr/local/server/mysql/log/error.log port = 3306 [mysql_safe] pid-file = /var/run/mysql/mysqld.pid log-error = /usr/local/server/mysql/log/error.log [client] port = 3306 socket = /usr/local/server/mysql/data/mysql.sockログイン後にコピー設定ファイルを/etc/ディレクトリにソフトリンクします
ln -s /usr/local/server/mysql/my.cnf /etc/my.cnfログイン後にコピー注: ソフト リンクの作成時にファイルが存在することを確認するメッセージが表示された場合は、/etc/my.cnf を削除してからソフト リンクを作成できます
3) 情報を保存するデータベースを作成する 必要なディレクトリとファイル
mkdir /usr/local/server/mysql/data mkdir /usr/local/server/mysql/log mkdir /var/run/mysql touch /usr/local/server/mysql/log/error.logログイン後にコピー4) ディレクトリ所有者を設定します
chown -R mysql:mysql /usr/local/server/mysql/ chown -R mysql:mysql /var/run/mysql/ログイン後にコピー
3. 環境変数の設定と起動時の自動起動
1) 環境変数の設定
プロファイル ファイルの編集
vim /etc/profileログイン後にコピー次の情報をプロフィールの最後に追加します
export PATH=$PATH:/usr/local/server/mysql/binログイン後にコピー環境変数をすぐに有効にする
source /etc/profileログイン後にコピー2) ブート時の自動起動を設定します
cp support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig mysqld onログイン後にコピー
4. ファイアウォール設定
5. mysqlを起動し、rootユーザーのパスワードを設定しますCentOS ではデフォルトでファイアウォールが有効になっています。以下では、ファイアウォールを使用して 3306l ポートを開きます
1)有効にする前にまずポート 3306 が開いているかどうかを確認してください
firewall-cmd --query-port=3306/tcpログイン後にコピー2) オンになっていない場合は、ファイアウォールをオンにします。
3) ポート 3306を一時的に開くか永続的に開くかを選択できます 4) ファイアウォールを再起動しますsystemctl start firewalld.serviceログイン後にコピーfirewall-cmd --add-port=3306/tcp # 临时开启3306端口 firewall-cmd --permanent --zone=public --add-port=3306/tcp # 永久开启3306端口ログイン後にコピー
1) mysql6. リモート アクセスを起動します 2) root ユーザーのパスワードを設定しますfirewall-cmd --reloadログイン後にコピー注 1: パスワードの変更に成功したら、設定ファイルの Skip-grant-tables からログアウトします。 mysql を再起動し、root ユーザーを使用して再度ログインし、次のコードを実行します。/usr/local/server/mysql/support-files/mysql.server start # 启动MySQL /usr/local/server/mysql/bin/mysql -uroot -p # 这里直接回车,无须输入密码ログイン後にコピーリーリー
注 2: パスワードを 2 回リセットするのはシステム要件であり、そうしないとデータベースを操作できなくなります。
1)任意のホストへのアクセスを許可する mysql 権限4. PHP のインストール 1. インストール手順2) 権限の変更を有効にするuse mysql; update user set authentication_string=password('root') where user='root'; exit;ログイン後にコピーset password=password('root');ログイン後にコピー
1) 依存関係パッケージ libxml-devel2. php.ini を設定しますをインストールします。 2) PHP インストール パッケージを解凍します。GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your password' WITH GRANT OPTION;ログイン後にコピー3)FLUSH PRIVILEGES;ログイン後にコピーをコンパイルしてインストールしますyum -y install libxml2-develログイン後にコピー
1) 設定ファイルを PHP インストール ディレクトリにコピーします3. httpd.conf2) php.initar zxvf php-7.1.10.tar.gzログイン後にコピーを生成します。cd php-7.1.10 ./configure --prefix=/usr/local/server/php \ --with-apxs2=/usr/local/server/apache/bin/apxs \ --with-config-file-path=/usr/local/server/php \ --with-pdo-mysql make && make installログイン後にコピー
を変更します。
载入PHP模块,如httpd.conf中有下列代码则直接去掉前面#即可,没有则加入
LoadModule php7_module modules/libphp7.soログイン後にコピー在底部加入以下代码使得Apache可以解析php文件
<IfModule mod_php7.c> AddType application/x-httpd-php .php </IfModule>ログイン後にコピー找到如下代码,在index.html后面加入index.php
<IfModule dir_module> DirectoryIndex index.html </IfModule>ログイン後にコピー重启Apache
service httpd restartログイン後にコピー
4. 测试PHP是否成功安装
创建/usr/local/server/apache/htdocs/index.php
vim /usr/local/server/apache/htdocs/index.phpログイン後にコピー在index.php中编写以下代码
<?php phpinfo(); ?>ログイン後にコピー如果出现以下页面则安装成功
以上がLinux での PHP 開発環境のセットアップの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

PHP8では、一致式は、式の値に基づいて異なる結果を返す新しい制御構造です。 1)Switchステートメントに似ていますが、実行ステートメントブロックの代わりに値を返します。 2)一致式の式は厳密に比較され、セキュリティが向上します。 3)スイッチステートメントの脱落の可能性を回避し、コードのシンプルさと読みやすさを向上させます。

PHPでは、予測不可能なトークンを使用して、CSRF攻撃を効果的に防ぐことができます。特定の方法には次のものが含まれます。1。フォームのCSRFトークンを生成および埋め込みます。 2.リクエストを処理するときにトークンの有効性を確認します。

PHPの...(SPLAT)演算子は、機能パラメーターと配列を開梱するために使用され、コードのシンプルさと効率を向上させます。 1)関数パラメーター解放:アレイ要素をパラメーターとして関数に渡します。 2)配列の開梱:アレイを別の配列または関数パラメーターに解除します。

PHPでは、最終的なキーワードを使用して、クラスが継承されないようにし、メソッドが上書きされます。 1)クラスを決勝としてマークする場合、クラスを継承することはできません。 2)メソッドを最終的にマークする場合、メソッドはサブクラスによって書き換えられません。最終的なキーワードを使用すると、コードの安定性とセキュリティが保証されます。

ルートとしてMySQLにログインできない主な理由は、許可の問題、構成ファイルエラー、一貫性のないパスワード、ソケットファイルの問題、またはファイアウォール傍受です。解決策には、構成ファイルのBind-Addressパラメーターが正しく構成されているかどうかを確認します。ルートユーザー許可が変更されているか削除されてリセットされているかを確認します。ケースや特殊文字を含むパスワードが正確であることを確認します。ソケットファイルの許可設定とパスを確認します。ファイアウォールがMySQLサーバーへの接続をブロックすることを確認します。

PHPの厳格なタイプは、declare(strict_types = 1)を追加することで有効になります。ファイルの上部に。 1)関数パラメーターのタイプチェックと戻り値を強制して、暗黙の型変換を防ぎます。 2)厳格なタイプを使用すると、コードの信頼性と予測可能性を改善し、バグを減らし、保守性と読みやすさを向上させることができます。

c言語条件付きコンパイルは、コンパイル時間条件に基づいてコードブロックを選択的にコンパイルするメカニズムです。導入方法には、#IFおよび#ELSEディレクティブを使用して、条件に基づいてコードブロックを選択します。一般的に使用される条件付き式には、STDC、_WIN32、Linuxが含まれます。実用的なケース:オペレーティングシステムに従って異なるメッセージを印刷します。システムの数字数に応じて異なるデータ型を使用します。コンパイラに応じて、異なるヘッダーファイルがサポートされています。条件付きコンパイルにより、コードの移植性と柔軟性が向上し、コンパイラ、オペレーティングシステム、CPUアーキテクチャの変更に適応できます。
