AWS EC2 LAMP(php7.4) 環境設定 2021/07/25
[環境/インストール]
Apache PHP MySQL AWS phpMyadmin EC2
Apache PHP MySQL AWS phpMyadmin EC2
AWS上にLAMP環境を作成する手順を書いておきます。 1.Linux仮想マシン(EC2)を起動 AWSのマネジメントコンソールからEC2を選択 ※リージョンを「日本」にしておくこと インスタンスの作成を選択 ・AMAZON Lunux AMIを選択 ・無料利用枠の「t2.micro」を選択(750時間無料 2021/07/11時点) →インスタンスを作成 キーペアが生成できるのでダウンロードしておく。(.pem) ※コマンドプロンプトなどでサーバーにログイン 今後、WinSCPなどでログイン時に使用する為の重要なキー(鍵) 【ログインテストしてみる】 ・コマンドプロンプト を使って ログインしてみる。 コマンドプロンプトを立ち上げて、下記を入力 ・.pemは自分で配置した場所を確認 ・xx.xx.xx.xxは パブリックIPアドレス ssh -i ./.ssh/xxxxxxxxxxxxxx.pem ec2-user@xx.xx.xx.xx 予想請求額の通知を受け取る [請求アラートの作成] 上の3つにチェックしました 無料枠アラート 2.ppkファイルの作成 WinSCP .pem を使って.ppkファイルを作成する プライベートキー形式(.pem)をPuTTY 形式(.ppk)に変換 ・WinSCPを起動します ・サーバーへのログイン画面内の左下より「ツール」を選択し「PuTTYgenを実行」を選択します ・「Conversions」→「Import Key」を選択し、AWSのプライベートキー形式(.pem)を読み込みます ・「Save Private Key」をクリックしてPuTTY 形式(.ppk)にコンバートします。必要であればパスフレーズを設定します。 WinSCPでアクセスするときにパスワードを聞かれるためのパスフレーズ(なくてもOK) 【WinSCPでEC2に接続する】 ・WinSCPを起動して「新しいサイト」を選択します ・ホスト名に「パブリック DNS アドレス」を入力します。ユーザー名に「ユーザー名」を入力します ・「設定(D)…」をクリックし「高度なサイトの設定」の画面を開きます ・「SSH」→「認証」の設定で「秘密鍵」を選択し、先ほど作成した「PuTTY 形式(.ppk)」を設定します 3.パブリックIPアドレスを設定 パブリックIPアドレスが毎回変化してしまうので固定する。 ・左のメニューからElastic IPを選択 ・新しいアドレスの割り当てをクリック ・出来上がったアドレスを選択し、アクション→アドレスの関連付け ・インスタンスをクリックし、先ほど設定したLinuxのIDが出るので選択して紐づけ ・インスタンスからセキュリティグループをクリッ アクション→インバウンドルールの編集を選択 ・ルールの追加→http→保存 --------------------- 4,Apacheをインストール ・アップデートする sudo yum -y update ・Apacheをインストールする sudo yum -y install httpd 2.4.xx がインストールされる(2021/07/11時点) ・Apacheを起動する sudo service httpd start sudo systemctl start httpd.service ・今後自動で立ち上がるように設定する sudo chkconfig httpd on --------------------- 5.日本時間に変更する ・管理者権限に切り替えておく sudo su ・時間の確認(日本時間ではないはず) date ・UTC時間を日本時間に変更する ln -sf /usr/share/zoneinfo/Japan /etc/localtime ・日本時間の確認 date ------------------------ 6.PHPをインストール7.4.xx ・php74までが入っているか確認 $ sudo su # yum list installed | grep php # yum list | grep php ・PHPをインストールする(remiリポジトリやepel-releaseパッケージ) php74-php-mbstringなど入れる $ sudo amazon-linux-extras install php7.4 $ sudo amazon-linux-extras $ sudo yum install --enablerepo=epel,remi,remi-php74 php php-devel php-mbstring php-pdo php-gd php-xml php-mcrypt ・追加分 $ sudo yum install --enablerepo=epel libmcrypt $ sudo yum install --enablerepo=epel libargon2 $ sudo yum install php-mysqlnd $ sudo yum install php-mbstring $ sudo yum install php-gd $ sudo yum install php-xml $ sudo yum install php-xmlrpc $ sudo yum install php-opcache $ sudo yum install php-pecl-zip $ sudo yum install php-pear $ sudo yum install --enablerepo=remi,remi-php74 php-pecl-mcrypt ・php.iniの編集 $ sudo vi /etc/php.ini expose_php = Off max_execution_time = 60 ;memory_limit = 128M memory_limit = 512M error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT ・「/etc/php-fpm.d/www.conf」にログファイル名が記載されています。 post_max_size = 20M upload_max_filesize = 20M date.timezone = "Asia/Tokyo" session.gc_maxlifetime = 3600 mbstring.language = Japanese mbstring.internal_encoding = UTF-8 ・リスタート $ sudo systemctl restart httpd.service ・php-fpmサービスの起動 $ sudo systemctl enable php-fpm.service $ sudo systemctl restart php-fpm.service ・HTML拡張子でもPHP /etc/httpd/conf/httpd.conf の最後の行に以下を追加します # vi /etc/httpd/conf/httpd.confの中に下記2つを追加 ・AddOutputFilter INCLUDES .shtmlの下に2つ追加 AddType application/x-httpd-php .php .html AddType application/x-httpd-php-source .phps ・リスタート # sudo service httpd restart --------------------- 7.確認 ・apahceのバージョン確認 $ httpd -v ・phpのバージョン確認 $ php --version ファイルを置いて確認してみる(IPアドレスをブラウザで打ってみる) $cat /var/www/html/index.php --------------------- 8.composerのインストール ・「ec2-user」でインストールする ・ec2-userで作業 場所 /home/ec2-user/bin $ curl -sS https://getcomposer.org/installer | php $ ls -ltr $ mkdir ~/bin $ mv composer.phar ~/bin/composer $ which composer ・composerのバージョン確認 $ composer --------------------- 9.MySQL5.7のインストール ・コマンドプロンプトでログイン $ ssh -i ~/.ssh/秘密鍵名.pem ユーザ名@パブリックDNS $ sudo su ・MYSQLのインストール ・amazon-linux-extrasでmysqlのTopicを検索 $ amazon-linux-extras list $ amazon-linux-extras info mysql ・mariadbがインストールされているか確認 $ yum list installed | grep mariadb ・mysqlがインストールされているか確認 $ yum list installed | grep mysql ・mysqlがインストールできるか確認 $ yum info mysql ・mysql8.0リポジトリの追加(このリポジトリに5.7も含まれています) $ sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm -y ・mysql8.0リポジトリの無効化 $ sudo yum-config-manager --disable mysql80-community ・mysql5.7リポジトリの有効化 $ sudo yum-config-manager --enable mysql57-community ・mysql5.7がインストールできるか確認 $ yum info mysql-community-server ・mysqlインストール $ sudo yum install mysql-community-server -y $ mysqld --version ・リスタート $ sudo systemctl restart httpd ・自動起動設定 $ sudo systemctl start mysqld.service $ sudo systemctl enable mysqld.service $ systemctl status mysqld.service ・rootパスワードを確認 $ cat /var/log/mysqld.log | grep password A temporary password is generated for root@localhost: ************ ・初期設定 $ mysql_secure_installation Enter password for user root: ************ New password: xxxxxxxxxxx Re-enter new password: xxxxxxxxxxx Change the password for root ? ((Press y|Y for Yes, any other key for No) : No Remove anonymous users? (Press y|Y for Yes, any other key for No) : Yes Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Yes Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Yes Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Yes ・【文字コード設定】 $ mysql -u root -p Enter password: @@@@@@@@@@@@ ・文字コードの確認 mysql> show global variables like 'character%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ mysql> exit ・文字コードの変更([mysqld]と[client]セクションと設定を追加) $ sudo vi /etc/my.cnf + [mysqld] (既に記述されている場合は省略) + character_set_server=utf8mb4 + [client] + default-character-set=utf8mb4 ・mysql再起動 $ sudo systemctl restart mysqld.service ・mysqlにログイン $ mysql -u root -p Enter password: @@@@@@@@@@@@ ・文字コードの確認 mysql> show global variables like 'character%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8mb4 | | character_set_connection | utf8mb4 | | character_set_database | utf8mb4 | | character_set_filesystem | binary | | character_set_results | utf8mb4 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ mysql> exit 次へ PHP7.1導入の場合AWS EC2の設定
2.AWS EC2 LAMP(php7.1.33) 環境設定
サーバコマンド
∟php5.3のインストール(CentOS)
∟mysqlのインストール(CentOS)
∟apacheのインストールと起動(CentOS)
∟apacheのログの確認(CentOS)
レンタルサーバ/VPS
プログラミング
∟簡単なAJAXプログラム php js html
∟TinyMCEのインストール 設定 textarea
∟TinyMCEの日本語化インストール
開発フリーソフト
∟AptanaStudio3(Windows7)
∟AptanaStudio3日本語化
PHPで画像認証をする
プログラミング
∟Android 画像ファイルを描画する
開発フリーソフト
∟AptanaStudio3(Windows7)
∟AptanaStudio3日本語化
∟Androidエミュレータのインストール
∟iBBDemo3 iPhone/iPad表示エミュレータ
Android端末ChromeでJavaScriptデバック
Googleウェブマスターツールの登録
Googleアナリティクスの使い方
Google検索結果ページを削除する
Googleトレンド
Google AdWords[キーワードツール]
関連ワードを調べる
急上昇ワードを調べる
colorpicker
colorbox
colorbox[2]
newsticker[1]
newsticker[2]上にスクロール
newsticker[3]左へスクロール
newsticker[4]左へスクロール
Cycle Plugin(+ Easing Plugin)
Coin Slider
スライダー[1]下にサムネイル画像
スライダー[2]右にサムネイル画像
スライダー[3]左右矢印 下にコントロールあり
スライダー[4]左右矢印 下にコントロールなし
スライダー[5]左右矢印 下にコントロールあり(stop付き)
スライダー[6]画像外の左右矢印
スライダー[7]自動切り替え
スライダー[8]自動切り替え
スライダー[9]自動切り替え
css3[transition]
リストとグリッド切り替え表示する[javascript-cssデザイン]
Marquee jQuery[上にスクロール]
DD_belatedPNGの使い方[透過処理PNG]
ナビボタンのロールオーバー[CSS]
ナビボタンのロールオーバー[JS(jQuery)]
ナビボタンのロールオーバー[JS滑らかに切り替わる]
PHPで画像認証をする
広告をブログに張る[クリック課金]
∟忍者AdMax
∟グーグルAdSense
レンタルサーバ・VPS情報
ポイントサイト情報
アドネットワーク情報
無料のアクセス解析ツール(オープンソース等)
無料アクセス解析の導入
ブログランキングサイト一覧
sitemap.xmlを作成する
SEO対策 Google AdWords(キーワードツール)
SEO対策 SEOTOOLS
SEO対策 SEOチェキ