Apacheをオンにする

  1. 画面右上の虫眼鏡をクリックし、「ターミナル」を検索してターミナルを開く
  2. sudo apachectl startと入力しエンターキーを押す
  3. Safari(または任意のブラウザ)を起動します。 アドレスバーに localhost と入力し、Enter

こんなに簡単だとは思いませんでしたか? そうなんです。

Turn on PHP

Mac にはすでに PHP が入っていますので、PHP.net からインストールする必要はありません。 High Sierra (バージョン 10.13) より前の Mac には、PHP 5 がインストールされていました。 そのため、PHP 7 が付属しておらず、PHP 5 から PHP 7 にアップグレードするために余分な作業をしなければならないため、ユーザーはイライラすることになりました。 ありがたいことに、High Sierra にはすでに PHP 7.1 が搭載されています!

  1. ターミナルを開き、sudo nano /etc/apache2/httpd.conf と入力してエンターキーを押します
  2. 検索を表示する Ctrl+W を押します
  3. php を検索してエンターキーを押します。
  4. Delete the # from #LoadModule php7_module libexec/apache2/libphp7.so
  5. Press Ctrl+O followed by Enter to save the change you just made
  6. Press Ctrl+X to exit nano
  7. Type sudo apachectl restart and press Enter

You just turned PHP 7 on. ここまでは素晴らしい仕事です!

サイトフォルダの作成

  1. 画面左下のFinderをクリックし、上部のナビゲーションバーにあるGo > Homeをクリックします。 これにより、ホーム ディレクトリに移動します。このディレクトリには、コンピュータの名前が表示されます。
<?phpecho "Hello From Sites Folder!";phpinfo();?>
  1. 作成した Sites フォルダに index.php を保存します
  2. ターミナルに戻って sudo nano /etc/apache2/httpd.conf
  3. Ctrl+W キーで検索します
  4. ライブラリで検索して Enter キーを押してください。 このように表示されるはずです。
  5. /Library/WebServer/Documents/Users/david/Sites に置き換えます(david の代わりに、端末上部のホーム アイコンの横にある自分の名前を使用)
  6. Ctrl+O を押し、次に Enter で保存
  7. Ctrl+X で nano を終了
  8. sudo apachectl restart と入力して Enter

Safari に戻って localhost ページを更新すると、Hello From Sites Folder! と表示され、PHP 7 が使用されていることを示す PHP 情報が表示されます。

Install MySQL

  1. Go to https://dev.mysql.com/downloads/mysql
  2. Scroll down until you see three download buttons and click one next to DMG Archive
  3. スクロールダウンして No thanks, just start my download
  4. ダウンロードしたファイルをクリックして pkg ファイルをダブルクリックして、インストールするとこのような感じになるはずです。
  5. インストールが終了すると、MySQL のユーザー名 (root) とパスワード (8hxKsiIh?) を知らせるポップアップが表示されます。YMt)を入力します。 パスワードは異なるでしょう。 パスワードをテキストファイルにコピーして(またはスクリーンショットを撮って)、OKを押してください。 パスワードがわからないとリセットするのが面倒なので、今すぐやってください。
  6. 画面左上のアップルロゴを押して、システム環境設定
  7. MySQLをクリックすると、オフになっています
  8. スタート MySQL サーバーを押してオンにすると、次のようになります
  9. ターミナルに戻って sudo /usr/local/mysql/bin/mysql -u root -p
  10. Enterを押すと、パスワードを聞かれるので入力してください。 これは Mac にログインするときに使用するパスワードです
  11. 次に Enter Password: と表示されますが、私の場合は 8hxKsiIh?YMt です (8hxKsiIh?YMt の代わりに、以前にコピーしたパスワードを使用する必要があります)。
  12. Type ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword'; and press enter
  13. Go to https://www.sequelpro.com and download Sequel Pro.この画面が出てきます。 これはphpMyAdminのようなものですが、デスクトップアプリケーションなのでより優れています。
  14. インストールを行い、Sequel Proを開き、ホストに127.0.0.1を入力します。 ユーザー名にはroot、パスワードにはnewpasswordを入力します。 Connect
  15. 左上の Choose Database… をクリックし、Add Database…
  16. それに mydb という名前を付けて Enter
  17. 次に左下のプラス記号をクリックして新しいテーブルを作成します。 テーブルの名前をmytableとし、add
  18. INDEXESという文字のすぐ上にあるプラス記号をクリックし、フィールドにmessageという名前を付けます。
  19. 上部のコンテンツをクリックします。
  20. 下部のプラス記号をクリックします(マイナス記号の左側)
  21. 新しいエントリに 1 の ID を与え、メッセージを MySQL が完全に動作するように設定します!
  22. Sites フォルダで index.php を開き、コードを

<?php$con = new mysqli("127.0.0.1", "root", "newpassword", "mydb");$message = $con->query("SELECT message FROM myTable")->fetch_object()->message;$con->close();echo "$message <br/>";echo "Hello From Sites Folder!";phpinfo();

ユーザーが入力した値がないため、この例は明らかに SQL インジェクションに対して無防備です。 しかし、MySQLi のプリペアド ステートメントについてよく理解していない場合は、SQL インジェクションを防ぐ方法についての優れたチュートリアルであるこの投稿をチェックしてみてください 😉。 PDO バージョンもあります。

  1. Safari で localhost をリフレッシュすると、次のように表示されます:

Great! MySQL が動作するようになったので、localhost を使用してデータベースに情報を格納できます。

SEO Friendly URL を有効にする

localhost/profile.php?user=david に行く代わりに localhost/profile/david に行ければ、よりきれいに見えるはずです。 RewriteRulesを使えるようにmod_rewriteを有効にして、これを動作させましょう。

  1. ターミナルでsudo nano /etc/apache2/httpd.confと入力し、エンターキーを押します
  2. Ctrl+Wを押し、rewrite.と入力し、rewrite.phpと入力します。 を削除し、Enterを押す
  3. #LoadModule rewrite_module libexec/apache2/mod_rewrite.so
  4. Ctrl+Oを押してEnterで保存
  5. Ctrl+Xでnano終了
  6. Type sudo apachectl restart

これでローカルホストを使って開発してもフレンドリーな URL を使うことができるようになりました。

Make .htaccess work

これは vanity URL を動作させるために必要ではありませんが、個人的には .htaccess を使用する方が好きです。htaccess ファイルを使用することを好みます。

  1. ターミナルで sudo nano /etc/apache2/httpd.conf と入力し、エンターキーを押します
  2. Ctrl+W を押し、AllowOverride controls と入力します。 と入力し、Enterキーを押す
  3. Change AllowOverride None to AllowOverride All
  4. Press Ctrl+O followed by Enter to save
  5. Press Ctrl+X to exit nano
  6. Type sudo apachectl restart

Now you can add .NET Framework 2.0.htaccessファイルをSitesフォルダに追加すればうまくいきます。

Turn On SSL/HTTPS

ローカルホストからウェブサイトにアクセスする代わりに、https://localhostからウェブサイトにアクセスしたい場合があります。 SSLをオンにすると、URLバーのlocalhostの横に南京錠が表示されます。

  1. ターミナルでsudo nano /etc/apache2/httpd.confと入力し、エンターキーを押します
  2. Ctrl+Wを押し、socache_shmcb_module.と入力し、sudo nano /etc/apache2/httpd.confをクリックします。 を削除し、Enter
  3. Ctrl+Wを押して、#LoadModule socache_shmcb_module libexec/apache2/mod_socache_shmcb.so
  4. mod_ssl と入力し、Enter
  5. #LoadModule ssl_module libexec/apache2/mod_ssl.so
  6. Ctrl+Wを押して、#を削除。 httpd-ssl と入力し、エンターキーを押す
  7. Delete # from #Include /private/etc/apache2/extra/httpd-ssl.conf
  8. Press Ctrl+O followed by Enter to save
  9. Press Ctrl+X to exit nano
  10. Type sudo nano /etc/apache2/extra/httpd-ssl.conf and press enter
  11. Press Ctrl+W, type ServerName and press enter
  12. Replace www.Wikipedia.example.com:443 を localhost に置き換える
  13. すぐ上に /Library/WebServer/Documents があります。 これを/Users/david/Sitesに置き換えてください。 (先ほどと同じように、david の代わりに自分の名前を使います)
  14. <VirtualHost_default_:443> のすぐ下に追加します (ただし、david を自分の名前に置き換えます):
<Directory "/Users/david/Sites"> Options All MultiviewsMatch Any AllowOverride All Require all granted</Directory>
  1. あなたのターミナルは今このような状態になっているはずです。
  2. Press Ctrl+O followed by Enter to save
  3. Press Ctrl+X to exit nano
  4. Type sudo nano /etc/ssl/openssl.cnf and press enter
  5. A openssl.NET の一番下にある、opensl.Text をクリックします。cnf に次のように追加します:
subjectAltName = DNS:localhost
  1. あなたのターミナルは次のようになります:
  2. Press Ctrl+O followed by Enter to save
  3. Press Ctrl+X to exit nano
sudo openssl req -extensions san -config /etc/ssl/openssl.cnf -x509 -nodes -newkey rsa:4096 -keyout /private/etc/apache2/server.key -out /private/etc/apache2/server.crt -days 365 -subj "/C=US/ST=Florida/L=Boca Raton/O=WebsiteBeaver/CN=localhost"

and press Enter. (あなたの情報を代わりに使うこともできますが、localhostは変更しないでください)

  1. Type
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain /private/etc/apache2/server.crt

と入力します

  1. Type sudo apachectl restart
  2. これでブラウザでhttps://localhostへ行くと、URLの隣に南京錠が見えますが、これはSSLの設定が完了したことを示します!

.

コメントを残す

メールアドレスが公開されることはありません。