linux mintのローカル環境でApache2

2025/6/20 [15:26:07] (金) 天気

Mac miniのlinux mint環境にApache2を設定したのでメモ。


2005年ぐらいに同じようなエントリを何度か書いていて、さらに最近だと2022年頃にも書いている…設定まわりはほんと覚えてないので、くどいけど書き残しておこう。


Apache2のインストールは簡単

$ sudo apt install apache2


↑これだけ。


設定がディストリビューションで微妙に違ってたり、そもそも時代も違っていて昔のうろ覚えが通用しない。毎度毎度グーグル先生。


設定ファイルは

「/etc/apache2/」以下にある。


・apache2.conf


サイトを展開するディレクトリの指定

170行目あたりに指定されているで自分のサイトを追加設定。

<Directory /home/t2akii/doncha.net/>
  Options -Indexes +FollowSymLinks +ExecCGI
  AddHandler cgi-script .cgi .pl
  AllowOverride None
  Require all granted
<Directory>

基本、どれも呪文だけど

CGIを使うので

「+ExecCGI」

「AddHandler cgi-script .cgi .pl」

を追加。


・sites-available/000-default.conf

WEBサイトの設定ファイル


ServerName doncha.net
ServerAdmin t2akii@doncha.net
DocumentRoot /home/t2akii/doncha.net

VirtualHostの受付portはデフォルトの80のまま。


・sites-available/default-ssl.conf

SSL接続のための設定ファイル


ServerName doncha.net
ServerAdmin t2akii@doncha.net
DocumentRoot /home/t2akii/doncha.net
SSLCertificateFile  /etc/ssl/certs/apache-selfsigned.crt                                                        
SSLCertificateKeyFile  /etc/ssl/private/apache-selfsigned.key

VirtualHostの受付portはデフォルトの443のまま。


SSLCertificateFileとSSLCertificateKeyFileの2行はデフォルト設定されているものをコメントアウトして自分で作ったSSLの自己認証のキーの場所をここに入れる。自己認証証明書の作り方は以下。


opensslが必要なのでインストールする

$ sudo apt install openssl


秘密鍵と自己署名証明書を作成する

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048
-keyout /etc/ssl/private/apache-selfsigned.key
-out /etc/ssl/certs/apache-selfsigned.crt

コマンドを叩くと以下の質問が出てくるのでテキトーに入力する。

Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:local
Locality Name (eg, city) []:Tokyo
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Free
Organizational Unit Name (eg, section) []:Free
Common Name (eg, YOUR name) []:doncha.net
Email Address []:

自分だけしか使わないので、ここは何でもOK


以下のディレクトリにキーファイルが作られる。

/etc/ssl/private/apache-selfsigned.key

→秘密鍵

/etc/ssl/certs/apache-selfsigned.crt

→証明書



*-available/にある設定を本番に反映させるために*-enable/にシンボリックリンクを作成する。

available ←用意してある設定

enable ←反映して生きてる設定


上記したサイト設定のためのふたつの設定ファイル

000-default.confとdefaut-ssl.confをリンク


SSLとCGIを使えるようにするためのモジュールを本番反映用のディレクトリにリンクする必要がある。

mods-available/にある以下のファイルをmods-enable/にリンク

cgi.load

socache_shmcb.load

ssl.conf

ssl.load


デフォルトで使うならこれでOK

わたしの場合、サイトを展開するのが自分のHOME以下なので、Apacheには閲覧したりCGIを走らせる権限がなくて403エラーとなる。


・envvars

apache2.confで使う変数を定義したファイル。


export APACHE_RUN_USER=t2akii
export APACHE_RUN_GROUP=t2akii

デフォルトではApacheは「www-data」というユーザー、グループで実行されることになってるので、ここを自分のユーザー名に変更する。


設定ファイルを編集更新して、各種設定ファイルを本番反映するためのディレクトリにリンクしたらApacheを再起動。

$ sudo systemctrl restart apache2

再起動でエラーが出たら設定ファイルの記述ミス。エラーメッセージが具体的で丁寧なので、メッセージを確認して対応。


ブラウザでlocalhostにアクセス。


image

平成の頃のPCゲーマー御用達、片手で操作できるトラックボール。

飲み食いしながらでもゲームができる逸品。

[更新]2026-02-11 23:17:04

webは速さが絶対正義

2012/6/20 [12:15:42] (水) 天気

googleさまの記事によるとページ表示は最悪でも2秒以内、理想は1秒以内。amazonに関する記事だと表示が0.1秒遅くなると売上が1%落ちるし、googleの記事だと表示が0.5秒遅くなると検索数が20%落ちる。らしい。


かたやECサイトだし、もう一方は検索で広告商売なので、こうしたデータからすると、表示速度は売上直結死活問題。コミュニティサイトやブログ、ニュース系サイトなどはそこまでシビアじゃないと思うけど、待たされるのはストレス、に違いはない。


情報設計とか、ユーザビリティとか、機能面とか、デザインとか、いろいろ言われて、サイト作りに盛られていく。この過程で、組織内の大きな声の人間や、正論クンの言うとおりになってしまって、表示速度のことに気づくのが、ほぼサイトが完成する公開直前のテストだったりして仰け反ることになる。


そりゃ、そんな機能あったらいいよね。キャッチーで人目をひくよ、このデザイン。動線確保のためにショートカットリンクは常に表示だよ、やっぱり。


なんてことやってると、表示速度は、確実にコンマ何秒かずつでも遅くなっていく。サーバーの設定で頑張って、プログラムで頑張ってるのに、わざわざ遅くなる要因をつけ足してることに変わりない。


どんな魅力的なサイトでも使ってもらってなんぼ。アクセスしてページが開くのに、ひと呼吸もふた呼吸も待たされたんじゃ、面倒で離脱する。リピータになってくれてるのに、いつも使ってるうちにイライラがたまって、そのうちアクセスしなくなる。


てことで、この雑記帖みたいな辺境も、twitterやamazonからデータを取得するコンテナが増えてくると、その分表示速度が落ちてくる。なので、ごそごそいじって、ajaxでの取得に切り替えた。ページ全体の表示とはまた別扱いなのが、ajaxのいいところ。今まで4秒ぐらいかかってた表示がぎりぎり2秒台まで短縮できた、かな(前職のダウンロード配信サイトでは、ストップウォッチを片手に表示速度をチェックして、速度が出ないので公開延期になったりもした)


てな細工を先日やったこともあって、表示速度について、電子書籍検索サイト「電子書籍を探すなら hon.jp」のAPIをちょっといじってみて気になった。ここは、電子書籍を総ざらいで検索できるのでかなり便利なサイト。perlでごそごそいじってウチに組み込もうとしたところ、速度が出ない。RESTのURIをそのままブラウザに入れても、レスポンスがかなり遅い。6秒程度かかるケースもある。

↓たとえばこんな検索

キーワード:山田風太郎・ジャンル:国内文学・ハードウエア:iphone

ユーザーページも、本を起点にユーザーを結びつけたり、ajaxで画面遷移なく直観的に使えるようにしたり、機能豊富でやろうとしてることは大賛成だし、かなり面白い。でも、ここも速度が出てない。一度公開してしまってる機能を引っ込めるのはちょっとアレだけど、整理して速度を見直すか、速度が出てなくて待たされてる感を少しでも軽減できるような効果を検討するとか、お願いしたいところ。


文句ばかりつけたけど、電子書籍検索に関して、このサイトは本当にオススメ!


あと、やっぱりなんちゅーか。電子書籍に統一のコードがないのが(?)困る。


続・ハイパフォーマンスWebサイト ―ウェブ高速化のベストプラクティス

『続・ハイパフォーマンスWebサイト ―ウェブ高速化のベストプラクティス』

スティ-ブ・サウダ-ズ

[更新]2026-02-02 15:07:53

iPhone Android スマホ対応(?)HTML

2011/6/20 [20:13:11] (月) 天気

なんもしてない困った状態だし、「趣味は読書2」のテコいれでもやるか、と。スマホでも見られるようなページを作ってみた。

グーグルさまで5分ほど調べたところ、どうやら


横幅320pxでレイアウトデザインしておけば、まず大丈夫


らしい。

まあ、ただちにレイアウトが崩れることもなさそうだし、一定のめどがつくまでは320pxで、ということか。すでにデータの出し入れする部分のライブラリは作ってあるんで、そこは使いまわし。表示部分だけを新規に作る、という感じ。ひとつのソースで横幅に応じてレイアウトが変わる、というのが今後は主流だろうと言われてるけど、暑いし蒸すしよくわからないんで、USER_AGENTで振り分ける。


改めて、ケータイサイトとかブログとか、あちこち覗いてみたけど、よくもまあこんな小さな解像度にきちっときれいにレイアウトデザインしてるなあ、と真面目に感心してしまった。

ページ内に飛び先が多いと起点がわからなくなって、そのうちページ移動するのが面倒になる・使いにくいサイトになる。横幅320に詰め込むとそれがますます顕著。なので、見た限り、シンプルで、リンク領域も分かりやすいサイトが多かった。ページ内の情報は、文章なら全部じゃなくて、キャッチのみをまず見せて全容をそこで把握できるようにして、個々の詳細へ誘導する、てな作りか。


といったことを踏まえつつ、どうせなら、流行のHTML5で構成してみた。「趣味は読書2」スマホ版 http://doncha.net/sp/


…レイアウトデザインはやっぱり難しい。データうんぬん、プログラムのところは決め事があるのでそのとおりにやればどうにでもなるけど、「見た目」のところは決め事がないので面倒。HTML5は効果・表現が増えてますます、「見た目」のところにコストがかかりそう。…って、実際は、ただ声がデカイ人間のゴリ押しで決め事ができるんだけど。



[06/29 11:42:38]

てなこと書いてたけど、jquery.mobile を使えば簡単に移植できる。


「jquery mobileがあれば簡単スマホ対応」 http://t2aki.doncha.net/?id=1338631302


jQuery Mobile スマートフォンサイト デザイン入門 (WEB PROFESSIONAL)

『jQuery Mobile スマートフォンサイト デザイン入門 (WEB PROFESSIONAL)』

西畑一馬

[更新]2026-02-03 09:08:19

paypal と 電子書籍のダウンロード販売(その1)

2010/6/20 [16:00:33] (日) 天気

小説や漫画など、電子書籍を作るのは簡単。問題はどうやってそれを売るのか。

「ホームページに並べて・購入してもらって・ダウンロードしてもらう」

というのをどうすんだよ、てことで調べてみたメモ。

(ちなみに、作った電子書籍はDRMなしのPDFファイル)


結論から言うと。


Paypalのプレミア(以上の)アカウントを作れば、個人でも簡単にクレジットカードを使った小額決済ができて、ちょっと仕組みを作ればダウンロード販売までできる。

Paypalのアカウントは固定費不要。クレジットカード決済に審査も不要。一度の決済手数料は40円+3.8%~。驚く手軽さ気軽さだ。


ショップとユーザーの流れ

ショップを訪れたユーザーがページにつけられたPaypalの購入ボタンをクリックすると、Paypalの支払いページに飛ばされて、そこで支払い手続きとなる。クレジットカード番号やメールアドレスなどをPaypalに対して入力することとなる。Paypalの支払い完了ページに、「マーチャントに戻る」というわけのわからないリンクが目立たないようあるけど、これをクリックすると、ユーザーはショップに戻される。戻ってきたユーザーは、ショップが用意した「ご購入ありがとうございました」ページなどを見る。

こちらでユーザーを誘導する。


ショップの裏方(たとえばデータベース)とPaypalの流れ

それとはまた別に、Paypalは支払いが生じたら、ショップにお知らせしてくるので、それを元に、ショップはデータベースに登録したり、ユーザーにお知らせメールを発送したりする。

こちらでショップとして売買の確定をする。


上記のやりとりで、なにか不明点があっても、Paypalの管理ページを開いてみれば全部わかるので、後でチェックして対応することも簡単にできる。


image


Paypalとのデータのやりとりでは

「誰が何を買ったのか」

だけがわかればOK。というかPaypalの役割はここまで。


ダウンロードURLを作って、そこでダウンロードできるようにするのは、ショップ側で作ることになる。


PDTとかIPNのサンプルコードなどの具体例は、以下次号、かな。


# ページは、あとは、本番でのチェックと原稿の校正だけ、となった。

# 七月にはオープン予定で。


Web Site Expert #36

『Web Site Expert #36』

編集部 編

[更新]2016-05-19 16:34:35

ぴんち、かなぁ

2008/6/20 [20:40:17] (金) 天気

検診の結果がろくでもなかった。


尿酸値7.4(正常7.0以下)

コレステロールは高水準で治療中

上記おっさんメタボはくそったれ、な感じだよな、てへ。と済ませてやろう。


問題は眼底検査。


網膜血管硬化症(両目とも)

網脈絡膜萎縮(左目)

って、もしかしてぴんちなのか。失明はキツイぞ。視力が0.4まで急低下してるし(…とか思ったら去年すでに0.3と0.5だった)

調べてみると、ようは血管の病気っぽい。コレステロールの高脂血症が原因じゃねえのか、こいつ。…素人がビビっててもしょうがない。とっとと精密検査だ。

<<2026/06>>
 123456
78910111213
14151617181920
21222324252627
282930

【最近の10件】

日常読書映画アニメゲーム健康料理グルメカメラ写真ネタ仕事パソコンインターネットperlEPUB3電子書籍ActivityPub
検索: