検索
ホームページバックエンド開発PHPチュートリアルもう一度書かないと、もう二度と書かないと思います -LAMP の基本、または -lamp の基本_PHP チュートリアル

もう書かないと、もう書かないと思います -LAMPの基本も、-Lampの基本も

こんにちは

4日間のごちそうを終えて、みんなすっきりした気分です。 。 。昨日の怠惰は理由のない怠惰でした。とにかく、ペンを取る時間です、親愛なる

1. Ubuntu での LAMP 設定

-----Ubuntuの基本-----

----管理者権限

セキュリティ上の理由から、Ubuntu ではリモートログインに root アカウントを使用することはお勧めしません。他の通常のアカウントの使用を強制します

通常のアカウントにはスーパー管理者権限がなく、デフォルトではrootアカウントを使用してログイン(リモートなど)できないため、次の2つのコマンドを使用する必要があります

su (ユーザーの切り替え) スーパー管理者に切り替えます

sudo (ユーザーの切り替えとDO) スーパー管理者として実行

両者には本質的な違いがあります。前者はアクションを実行し、root パスワードを使用する必要がある「ボス」(root) であり、終了するまで終了しません。後者は、ユーザーに許可を要求する「弟」です。上司、それは一時的な許可であり、パスワードは通常のものだけを使用します

----予備知識

liang@liang-andy:~

ユーザー名@ホスト名: 現在のディレクトリユーザータイプタグ

このうち、$は一般ユーザー、#はスーパー管理者を表します

---

liang@liang-andy:~$ pwd

/home/liang
~ は、現在のユーザーの個人フォルダーにいることを意味し、pwd コマンドで実際のディレクトリを指定できます

---

これら 2 つのコマンドを以下に示します: root パスワードを変更します

liang@liang-andy:~$ sudo passwd root

liang の [sudo] パスワード:
新しい UNIX パスワードを入力してください:
新しい UNIX パスワードを再入力してください:
passwd: 正常に更新されました パスワード
liang@liang-andy:~$
じゃあスー

liang@liang-andy:~$ su

パスワード:
root@liang-andy:/home/liang#
ディレクトリパスが変更されており、#
があることに注意してください

----apt-get ソフトウェア インストール ツール

主な機能は、ソフトウェアリストの取得 apt-get update とソフトウェアのインストール apt-get install です

----その他の必要なコマンドを学びましょう

http://itlab.idcquan.com/linux/special/linuxcom/

---

名前:ls

使用権限:すべてのユーザー

使用方法:ls [-alrtAFR] [name...]

説明:指定した作業ディレクトリの内容を表示(現在の作業ディレクトリに含まれるファイルを一覧表示)およびサブディレクトリ)。

パラメータ:

-a すべてのファイルとディレクトリを表示します (ls のデフォルトでは、「.」で始まるファイル名またはディレクトリ名が隠しファイルとして表示されるため、リストには表示されません)
-l ファイル名に加えて、ファイルの種類も表示されます。ステータス、権限、所有者、ファイルサイズなどの情報が詳細にリストされます
-r はファイルを逆順(本来は英語のアルファベット順)に表示します
-t はファイルを作成時間順にリストします
-A と同じです-a ですが、「.」(現在のディレクトリ) と「..」(親ディレクトリ) はリストしません
-F リストされたファイル名の後に記号を追加します。たとえば、実行可能ファイルの場合は「*」を追加します。 for directory. "
-R ディレクトリ内にファイルがある場合、次のファイルも順番にリストされます

例:
現在の作業ディレクトリ内の名前が s で始まるすべてのファイルをリストし、新しいものから順に並べ替えます。 last:
ls -ltr s *

/bin ディレクトリの下にあるすべてのディレクトリとファイルの詳細を一覧表示します:
ls -lR /bin

現在の作業ディレクトリの下にあるすべてのファイルとディレクトリを一覧表示します。ディレクトリ名の後に「/」を追加します。実行ファイル名に「/」を追加します 後に「*」を追加します:
ls -AF

---

ll は、隠しファイルを含むファイルの下にあるすべてのファイル情報をリストしますが、ls -l は明示的なファイルのみをリストします。これは、2 つのコマンドが同等ではないことを示しています。

---

コマンド名: ln

使用権限: すべてのユーザー

使用方法: ln [options] source dist、オプションの形式は次のとおりです:

[-bdfinsvF] [-S Backup-suffix] [-V {numbered ,既存,シンプル}]
[--ヘルプ] [--バージョン] [--]
説明: Linux/Unix ファイル システムには、ファイルのエイリアスとみなすことができるいわゆるリンクがあり、リンクは 2 つのタイプに分類できます: ハード リンク リンク)およびソフトリンク(シンボリック) リンク)、ハード リンクはファイルに複数の名前を付けることができることを意味しますが、ソフト リンクは、コンテンツが別のファイルの場所を指す特別なファイルを生成します。ハードリンクが同じファイル内に存在する ただし、ソフト リンクは異なるファイル システムにまたがることができます。
lnsource distはsourceへのリンク(dist)を生成します。ハードリンクを使用するかソフトリンクを使用するかはパラメータによって決まります。

ハードリンクでもソフトリンクでも、元のファイルはコピーされず、ごく少量のディスクスペースしか占有しません。

パラメータ:

-f: リンク時に最初に dist と同じファイル名のファイルを削除します -d: システム管理者が独自のディレクトリをハードリンクできるようにします -i: dist でファイルを削除した後 同名のファイルが存在する場合、先に問い合わせる -n: ソフトリンク作成時に dist を通常のファイルとして扱う -s: ソフトリンク(シンボリックリンク)を作成する -v: リンク前にファイル名を表示します -b: リンク時に上書きまたは削除されるファイルをバックアップします -S SUFFIX: バックアップされたファイルにサフィックス SUFFIX を追加します -V METHOD: バックアップ方法を指定 --help: 補助命令を表示 --version: バージョンを表示
例:
ファイル yy からシンボリック リンクを生成: zz
ln -s yy zz

ファイル yy からハード リンクを生成: zz
ln yy xx

---

名前: cd

使用権限: すべてのユーザー

使用方法: cd [dirName]

説明: 作業ディレクトリを dirName に変更します。 ここで、dirName 表現は絶対パスまたは相対パスにすることができます。ディレクトリ名を省略した場合は、ユーザーのホーム ディレクトリ (つまり、ユーザーがログインしたばかりのディレクトリ) に変更されます。

また、「~」はホームディレクトリ、「.」はカレントディレクトリ、「..」はカレントディレクトリの場所より上のディレクトリを意味します。

例: /usr/bin/ にジャンプします:
cd /usr/bin

自分のホームディレクトリにジャンプします:
cd ~

現在のディレクトリの 2 つ上のレベルにジャンプします:
cd ../..

cd - 現在のディレクトリに入る前のディレクトリに戻ります

名前: cp

使用権限: すべてのユーザー

使用方法:

cp [オプション]source dest
cp [オプション] source...ディレクトリ

説明: 1つのファイルを別のファイルにコピー、または複数のファイルをコピー別のディレクトリに。 (copy)

パラメータ:

-a ファイルの状態、権限などの情報を可能な限りそのままコピーします。
-r ソースにディレクトリ名が含まれている場合、ディレクトリ内のすべてのファイルも順番にコピー先にコピーされます。
-f コピー先に同じファイル名のファイルが既に存在する場合、コピー前に削除します。
例:
ファイル aaa (既に存在します) をコピーし、 bbb という名前を付けます:
cp aaa bbb

O o は Sudo CP Document_a DCUMENT_B



すべての C 言語プログラムを Finished サブディレクトリにコピーします:
CP *.c Finished

---

名前:mv

権限:すべてのユーザー

使用法:

mv [オプション]source dest
mv [オプション]source...ディレクトリ
説明:1つのファイルを別のファイルに移動する、または複数のファイルが別のファイルに移動されましたディレクトリ。
パラメータ: -i 宛先に同じ名前のファイルがすでにある場合、最初に古いファイルを上書きするかどうかを尋ねます。

例:

ファイル aaa の名前を bbb に変更します:
mv aaa bbb

すべての C 言語プログラムを Finished サブディレクトリに移動します:
mv -i *.c

---

名前:rm

使用権限:すべてのユーザー

使用方法:rm [オプション] name...

説明:ファイルとディレクトリを削除します。

パラメータ:

-i 削除する前に一つ一つ確認を求めます。
-f 元ファイルの属性が読み取り専用に設定されている場合でも、いちいち確認せずに直接削除します。
-rもディレクトリ以下のファイルを一つずつ削除します。
例:
すべての C 言語プログラム ファイルを削除します; 削除する前に 1 つずつ確認を求めます:
rm -i *.c

完了したサブディレクトリとそのサブディレクトリ内のすべてのファイルを削除します:
rm -r 完了しました

---

名前: mkdir

使用権限: 現在のディレクトリ内の適切な権限を持つすべてのユーザー

使用方法: mkdir [-p] dirName

説明: dirName という名前のサブディレクトリを作成します。

パラメータ:-p ディレクトリ名が存在することを確認し、存在しない場合は作成します。

例:

作業ディレクトリに、AAAという名前のサブディレクトリを作成します:
mkdir AAA

作業ディレクトリの下のBBBディレクトリに、Testという名前のサブディレクトリを作成します。 BBB ディレクトリがもともと存在しない場合は、作成します。 (注: この例で -p が付加されておらず、元の BBB ディレクトリが存在しない場合はエラーが発生します。)
mkdir -p BBB/Test

---

名前: rmdir

使用権限: 現在のディレクトリ内の適切な権限を持つすべてのユーザー

使用方法: rmdir [-p] dirName

説明: 空のディレクトリを削除します。

パラメータ: -p は、サブディレクトリが削除されて空のディレクトリになった場合、サブディレクトリも削除されることを意味します。

例:

作業ディレクトリ内の AAA という名前のサブディレクトリを削除します:
rmdir AAA

作業ディレクトリ下の BBB ディレクトリで、Test という名前のサブディレクトリを削除します。 Test の削除後に BBB ディレクトリが空になると、BBB も削除されます。
rmdir -p BBB/テスト

---

chmod----1つ以上のファイルのアクセスモード(モード)を変更します chmod [オプション] モードファイル この機能を使用してファイルアクセスモードを変更できるのは、ファイル所有者または特権ユーザーのみです。モードは数値形式で指定することも、who オペコード権限の形式で表現することもできます。 who はオプションで、デフォルトは a (すべてのユーザー) です。選択できるオペコードは 1 つだけです。複数のモードをカンマで区切って指定できます。 オプション: -c、--変更 変更されたファイルに関する情報のみを出力します -f、--サイレント、--クワイエット chmod がファイルモードを変更できない場合、ファイルのユーザーに通知しません --助けて ヘルプ情報を出力します。 -R、--再帰的 サブディレクトリを再帰的に走査し、ディレクトリ内のすべてのファイルとサブディレクトリに変更を適用できます --reference=ファイル名 権限を設定するには、ファイル名の権限を参照してください -v、--verbose 修正の成否に関わらず、各ファイルの情報を出力します --バージョン バージョン情報を出力します。 ユーザー g グループ その他 すべてのユーザー (デフォルト) オペコード + 権限を追加する - 権限を削除する = 権限を再割り当てする 許可 r 読む w 書く × 実行 ユーザー(またはグループ)ID番号を設定します 所有者以外によるファイルやディレクトリの削除を防ぐためにスティッキー ビットを設定します ユーザーの現在の権限 g グループの現在の権限 他のユーザーの現在の権限 オプションとして、権限を表すのに 3 桁の 8 進数を使用します。最初の桁は所有者の権限を指定し、2 桁目はグループの権限を指定し、3 桁目は他のユーザーの権限を指定します。 4 (読み取り)、2 (書き込み)、1 (実行) の 3 つの値の合計がアクセス許可の決定に使用されます。たとえば、6(4+2) は読み取りと書き込みの権限を表し、7(4+2+1) は読み取り、書き込み、および実行の権限を持ちます。 3 桁の許可シーケンスの前にある 4 桁の値を 4、2、1 に設定することもできます。これは次のことを意味します。 4. 実行時にユーザー ID を設定します。これは、プロセスを作成したユーザーではなく、ファイル所有者に基づいてプロセスを承認するために使用されます。 2. 実行時にユーザー グループ ID を設定します。これは、プロセスを作成したユーザーではなく、ファイルが配置されているグループに基づいてプロセスを承認するために使用されます。 1.接着ビットをセットします。 例: $ chmod u+x file ファイルの所有者に実行権限を追加します $ chmod 751 file ファイルの所有者に読み取り、書き込み、実行 (7) 権限を割り当て、ファイルのグループに読み取りと実行 (5) 権限を割り当て、他のユーザーに実行 (1) 権限を割り当てます $ chmod u=rwx,g=rx,o=x file 上記の例の別の形式 $ chmod =r file すべてのユーザーに読み取り権限を割り当てます $ chmod 444 file 上記の例と同じ $ chmod a-wx,a+r file 上記例と同じ $ chmod -R u+r directory ディレクトリ内のすべてのファイルとサブディレクトリの所有者に読み取り権限を再帰的に割り当てます $ chmod 4755 IDを使用し、所有者に許可を割り当て、書き込み、実行するように設定され、グループおよび他のユーザーに許可を割り当てて実行します。 -----LAMP環境を構築-----

----apt-get を使用して Apache MySQL PHP をインストールする

apt-get には、何かをインストールするときに、関連するものを一緒にインストールする機能があります

---

liang@liang-andy:~$ sudo apt-get install apache2

Apacheをインストールし、パスワード(通常ユーザー)とyを入力し、インストールが成功したことを示す次のコマンドを入力します

liang@liang-andy:~$ apache2 -v
サーバーバージョン: Apache/2.4.7 (Ubuntu)
サーバー構築:2015 10 14 14:18:49
次に、ifconfig と入力して IP アドレスを取得します

(私はここにいます) 192.168.1.100 で、正常に動作するページの検証を取得しました
---

PHPをインストールする

liang@liang-andy:~$ sudo apt-get install php5
liang@liang-andy:~$ php5 -v
PHP 5.5.9-1ubuntu4.14 (cli) (ビルド: Oct 28 2015 01:32:13) )
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies
次にロードします/apache2 での操作を実装する PHP モジュール php5.load を確認します (理由は関係なく、最初に実行してください)
liang@liang-andy:~$ cat /etc/apache2/mods-enabled/php5.load
LoadModule php5_module / usr /lib/apache2/modules/libphp5.so
---

MySQLをインストールする

liang@liang-andy:~$ sudo apt-get install mysql-server
これにはバージョンの検証は必要ありませんが、mysql を動作させるための PHP モジュールも確認する必要があります

liang@liang-andy:~$ cat /etc/php5/mods-available/mysql.ini
cat: /etc/php5/conf.d/mysql.ini: そのようなファイルまたはディレクトリはありません

ここで使用している Ubuntu は 14ls バージョンであり、12 の cat ディレクトリは /etc/php5/conf.d/mysql.ini とは異なることに注意してください

ここで、PHPはデフォルトではmysql拡張機能をインストールしないため、手動でインストールする必要があります

liang@liang-andy:~$ sudo apt-get install php5-mysql
liang@liang-andy:~$ cat /etc/php5/mods-available/mysql.ini
; php MySQL モジュールの設定
; 20
extension=mysql.so
これで完了です。mysql と apache2 を再起動します

liang@liang-andy:~$ sudo サービス mysql 再起動
liang@liang-andy:~$ sudo サービス apache2 再起動
---

1 回限りのインストール: 上記は段階的なプロセスであり、次のプロセスは 1 回限りのインストールです

sudo apt-get install apache2 php5 mysql-server php5-mysql

----phpinfo プローブを作成します

最初に vim をインストールします

sudo apt-get vim のインストール

phpのwwwフォルダーに切り替えてcdコマンドを使用します

cd /var/www/html (バージョン 14.4)

次に、ここでphpファイルを作成します

sudo vim info.php

PHPコードを書く

echo mysql_connect('localhost','root','hanhan123') ? 'Hoho' : 'WTF';

phpinfo();
次に、escキー、wqを入力して保存して終了します

http://192.168.1.100/info.php ブラウザ入力検証結果

Linuxはこうなりましたが、痛いのでこれ以上は書きません、また明日

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1074253.html技術記事書かないと、もう二度と書かないと思います - LAMP の基本、または - LAMP の基本 こんにちは。4 日間たくさん食べた後、私はスメクタのような気分です。 。 。昨日の怠惰は、要するに理由のない怠惰でした...
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
セッション固定攻撃をどのように防ぐことができますか?セッション固定攻撃をどのように防ぐことができますか?Apr 28, 2025 am 12:25 AM

セッション固定攻撃を防ぐための効果的な方法には、次のものがあります。1。ユーザーがログインした後にセッションIDを再生します。 2。安全なセッションID生成アルゴリズムを使用します。 3。セッションタイムアウトメカニズムを実装します。 4。HTTPSを使用したセッションデータを暗号化します。これらの措置は、セッションの固定攻撃に直面するときにアプリケーションが破壊されないようにすることができます。

セッションレス認証をどのように実装しますか?セッションレス認証をどのように実装しますか?Apr 28, 2025 am 12:24 AM

セッションのない認証の実装は、サーバー側のセッションストレージなしですべての必要な情報がトークンに保存されるトークンベースの認証システムであるJSonWebtokens(JWT)を使用することで実現できます。 1)JWTを使用してトークンを生成および検証する、2)トークンが傍受されるのを防ぐためにHTTPSが使用されることを確認する、3)クライアント側にトークンを安全に保存する、4)改ざんを防ぐためにサーバー側のトークンを検証する、5)短期アクセスや長期的なリフレイを使用するなどのトークンの取り消しメカニズムを実装する。

PHPセッションに関連するいくつかの一般的なセキュリティリスクは何ですか?PHPセッションに関連するいくつかの一般的なセキュリティリスクは何ですか?Apr 28, 2025 am 12:24 AM

PHPセッションのセキュリティリスクには、主にセッションハイジャック、セッションの固定、セッション予測、およびセッション中毒が含まれます。 1。HTTPSを使用してCookieを保護することにより、セッションハイジャックを防ぐことができます。 2。ユーザーがログインする前にセッションIDを再生することにより、セッションの固定を回避できます。3。セッションの予測は、セッションIDのランダム性と予測不可能性を確保する必要があります。 4.セッションの中毒は、セッションデータを確認およびフィルタリングすることで防ぐことができます。

PHPセッションをどのように破壊しますか?PHPセッションをどのように破壊しますか?Apr 28, 2025 am 12:16 AM

PHPセッションを破壊するには、最初にセッションを開始してから、データをクリアしてセッションファイルを破壊する必要があります。 1。Session_start()を使用してセッションを開始します。 2。Session_unset()を使用して、セッションデータをクリアします。 3.最後に、session_destroy()を使用してセッションファイルを破壊して、データのセキュリティとリソースのリリースを確保します。

PHPのデフォルトセッションの保存パスをどのように変更できますか?PHPのデフォルトセッションの保存パスをどのように変更できますか?Apr 28, 2025 am 12:12 AM

PHPのデフォルトセッションの保存パスを変更する方法は?次の手順で達成できます。Session_save_path( '/var/www/sessions'); session_start(); PHPスクリプトで、セッション保存パスを設定します。 session.save_path = "/var/www/sessions"をphp.iniファイルに設定して、セッションの保存パスをグローバルに変更します。 memcachedまたはredisを使用して、ini_set( 'session.save_handler'、 'memcached')などのセッションデータを保存します。 ini_set(

PHPセッションに保存されているデータをどのように変更しますか?PHPセッションに保存されているデータをどのように変更しますか?Apr 27, 2025 am 12:23 AM

tomodifydatainaphpsession、starthessession withsession_start()、$ _sessiontoset、modify、orremovevariables.1)startthessession.2)

PHPセッションに配列を保存する例を示します。PHPセッションに配列を保存する例を示します。Apr 27, 2025 am 12:20 AM

配列はPHPセッションに保存できます。 1。セッションを開始し、session_start()を使用します。 2。配列を作成し、$ _Sessionで保存します。 3. $ _Sessionを介して配列を取得します。 4.セッションデータを最適化してパフォーマンスを向上させます。

Garbage CollectionはPHPセッションでどのように機能しますか?Garbage CollectionはPHPセッションでどのように機能しますか?Apr 27, 2025 am 12:19 AM

PHPセッションガベージコレクションは、有効期限が切れたセッションデータをクリーンアップするために確率メカニズムを通じてトリガーされます。 1)構成ファイルにトリガー確率とセッションのライフサイクルを設定します。 2)Cronタスクを使用して、高負荷アプリケーションを最適化できます。 3)データの損失を避けるために、ごみ収集の頻度とパフォーマンスのバランスを取る必要があります。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

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

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター