メール:エイリアス機能のないメールボックスにエイリアス機能を実装する
メールアカウントの使い分けで面倒なのが、受信ボックスの設定とメールの確認
転送設定というものを使うと迷惑メールフィルターをONにしていると迷惑メール判定されてしまいますよね。
無差別受信できるサービスもあるようですが、今回は実在アドレスしか受信できないサーバー。
そこで便利なのがメインのメールbox1個にして、1アカウントで管理してしまう裏技
Yahooのセーフティーメールと同じような感じになると想像すると理解しやすいと思います
Outlookのエイリアス追加も同様にできますね。
☆ gmailだと メインアカウント[+任意文字]@ で無限増殖できますが、メインアカウントばればれで、迷惑メール防止できませんからね。
使い分けが大事ですね。
執筆:2024.01.25
編集:2024.01.25
編集:2024.01.25
メールアカウントの使い分けで面倒なのが、受信ボックスの設定とメールの確認
転送設定というものを使うと迷惑メールフィルターをONにしていると迷惑メール判定されてしまいますよね。
無差別受信できるサービスもあるようですが、今回は実在アドレスしか受信できないサーバー。
そこで便利なのがメインのメールbox1個にして、1アカウントで管理してしまう裏技
Yahooのセーフティーメールと同じような感じになると想像すると理解しやすいと思います
Outlookのエイリアス追加も同様にできますね。
☆ gmailだと メインアカウント[+任意文字]@ で無限増殖できますが、メインアカウントばればれで、迷惑メール防止できませんからね。
使い分けが大事ですね。
» 続きを読む
カテゴリー: レンタルサーバーやcgi
2024.01.25
AddHandler, RemoveHandler が動作しない
Apache2.4
.htaccessの
AddHandler, RemoveHandler が動作しない
SetHandlerは動作する
Apacheを2.4.46にアップグレードしてみたが直っていない。
ネットで調べると2017/03頃にはすでに報告されているバグ。
2010年ごろに報告されたバグとは別物っぽい。
http.conf
Options All
AllowOverride All
mime_moduleはロード済み。
ロードされていなかったら、.htaccessに記述した時点で落ちますしね。
Apacheのソースコード調べてもいいけど面倒。
このフォルダだけバージョンを切り替えて動作確認したいという用途につかうのでちょっと不便。
Windowsだと問題は発生しないので、Unixでの複数動作確認はスキップしよかなぁ
執筆:2021.03.01
編集:2021.03.01
編集:2021.03.01
Apache2.4
.htaccessの
AddHandler, RemoveHandler が動作しない
SetHandlerは動作する
Apacheを2.4.46にアップグレードしてみたが直っていない。
ネットで調べると2017/03頃にはすでに報告されているバグ。
2010年ごろに報告されたバグとは別物っぽい。
http.conf
Options All
AllowOverride All
mime_moduleはロード済み。
ロードされていなかったら、.htaccessに記述した時点で落ちますしね。
Apacheのソースコード調べてもいいけど面倒。
このフォルダだけバージョンを切り替えて動作確認したいという用途につかうのでちょっと不便。
Windowsだと問題は発生しないので、Unixでの複数動作確認はスキップしよかなぁ
» 続きを読む
カテゴリー: レンタルサーバーやcgi
2021.03.01
Django CGI(5.x / 1.x 2.x)
django1.x と2.xの両方で動作可能な django.cgiを作ったので速度を比較してみた。
前回とは違うアプローチをしてみたので、1個のファイルに小さく収まりました。
ベンチマークをすると CGI起動だとdjangoは 応答速度的に使えないコと判明しました。
ただし、CGIではなく常駐で運用するとレスポンスはとても速いです。
結論
原因
※ 応答速度が1秒を超えると閲覧者に遅いとストレスを感じさせてしまいます。
※ 時間は、URL呼び出し開始からデータ取得終了までにかかった時間。
※ C言語バイナリが最小時間は一番小さかった。
CGIのサイズ
執筆:2019.07.08
編集:2019.07.08
編集:2024.08.04
編集:2019.07.08
編集:2024.08.04
(2024-08-04)
PythonのバージョンとDjango を最新の5.0をインストールするとDjango 2.xのコードは そのまま動きました!
相変わらずオーバーヘッドが大きい
★ C:\Program Files\Python\3.12\Lib\site-packages\django の除外設定だけでも効果がありました。
PythonのバージョンとDjango を最新の5.0をインストールするとDjango 2.xのコードは そのまま動きました!
相変わらずオーバーヘッドが大きい
CGI版での速度 (調査日 2024年8月4日)
サーバー (apache2.4) |
django(CGI) |
ディフェンダーの設定 |
||
/admin/ hello |
||||
Windows11 (ローカルホスト) |
2.10~2.70秒 | 約1.5秒 |
(2024-07-18)
しばらく使っていない間に、The latest official version is 5.0.7.になっていますね
https://www.djangoproject.com/download/
https://docs.python.org/ja/3.12/library/cgi.html
Python cgiモジュールは、バージョン 3.11 で非推奨、バージョン 3.13 で削除予定とありますね
上記ページで3.13以降のマニュアルにするとなくなっています。
ということで、Django をCGIとして動作させる裏技は将来的に封殺されるかもしれないです。
CGIアプリケーションを作りたい場合は、Pythonは候補からはずれるということです。
格安運用でdjangoがいい場合は、共有サーバーではなく、安いVPS(仮想専用サーバー)を借りないといけないのかもしれないですね~。400円/月くらいですか?
VPSは自己管理なので面倒ですよね~
しばらく使っていない間に、The latest official version is 5.0.7.になっていますね
https://www.djangoproject.com/download/
https://docs.python.org/ja/3.12/library/cgi.html
Python cgiモジュールは、バージョン 3.11 で非推奨、バージョン 3.13 で削除予定とありますね
上記ページで3.13以降のマニュアルにするとなくなっています。
ということで、Django をCGIとして動作させる裏技は将来的に封殺されるかもしれないです。
CGIアプリケーションを作りたい場合は、Pythonは候補からはずれるということです。
格安運用でdjangoがいい場合は、共有サーバーではなく、安いVPS(仮想専用サーバー)を借りないといけないのかもしれないですね~。400円/月くらいですか?
VPSは自己管理なので面倒ですよね~
django1.x と2.xの両方で動作可能な django.cgiを作ったので速度を比較してみた。
前回とは違うアプローチをしてみたので、1個のファイルに小さく収まりました。
ベンチマークをすると CGI起動だとdjangoは 応答速度的に使えないコと判明しました。
ただし、CGIではなく常駐で運用するとレスポンスはとても速いです。
結論
djangoをCGIで動かすと何もなくても 0.5~0.6秒 レスポンスまでに時間がかかります。
djangoをCGIで運用することはお勧めできません。
mod_wsgiが使えない場合は、mod_phpなら導入されているサーバーは多いので、phpのフレームワークを検討したほうが賢明です。
djangoをCGIで運用することはお勧めできません。
mod_wsgiが使えない場合は、mod_phpなら導入されているサーバーは多いので、phpのフレームワークを検討したほうが賢明です。
原因
djangoは多数のファイルに分散されて、起動時にそれを読み込むため、CGIで動作させると とても時間がかかります。
速度比較いろいろ
django1とdjango2の速度差はそれほどなく、若干django2のほうがレスポンスが速い傾向にありました。
django
サーバー | CGI |
manage.py |
mod_wsgi |
localhost | 1.11秒 | 0.01秒 | 0.03秒 |
さくらインター ネット ライト |
1.23秒 | - | - |
※ 応答速度が1秒を超えると閲覧者に遅いとストレスを感じさせてしまいます。
CGI版での速度比較 (調査日 2019年7月7,8日)
サーバー (apache2.4) |
django1(CGI) | hello.cgi | |||||
/admin/ | hello | python | php | C言語 | GO | ||
Windows10 (ローカルホスト) |
5.86秒 | 2.64秒 | 0.30秒 | 0.25秒 | 0.02秒 | 0.06秒 | |
FreeBSD11 (イントラネット) |
1.11秒 | 0.51秒 | 0.03秒 | 0.03秒 | 0.01秒 | 0.02秒 | |
さくらインターネット ライト FreeBSD9 (インターネット) |
1.23秒 | 0.64秒 | 0.08秒 | 0.12秒 | 0.06秒 | 0.06秒 |
※ C言語バイナリが最小時間は一番小さかった。
CGIのサイズ
ファイルサイズ | hello.cgiの種類 |
1,988,354 | GO バイナリCGI |
6,604 | C言語 バイナリCGI |
140 | PHP CGIスクリプト |
115 | perl CGIスクリプト |
カテゴリー: レンタルサーバーやcgi
2019.07.08
cygwin
451: $result = zlib_decode($result);
なぜか50MBしか割り当てられていないとエラーが表示されます。
確認するが 512MBきちんと割り当てられている。
zlib_decode関数が怪しい
ということでzlib_decode関数をいじめてみます。
ということは、
・cygwinのphpにメモリリーク
・phar がメモリを食いつぶしている
・composer がメモリを食いつぶしている
あたりが疑われます
これ以上の追及は時間の無駄(というかわからない)なので
dosプロンプトで実行して解決
PHP Fatal error: Out of memory (allocated 49807360) (tried to allocate 2140027 bytes) in phar:///usr/local/bin/composer/src/Composer/Util/RemoteFilesystem.php on line 451
451: $result = zlib_decode($result);
なぜか50MBしか割り当てられていないとエラーが表示されます。
確認するが 512MBきちんと割り当てられている。
php -i | grep memory_limit
memory_limit => 512M => 512M
php -r "\$s = str_repeat(' ', 1000*1000*1000);"
PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 1000000024 bytes) in Command line code on line 1
zlib_decode関数が怪しい
ということでzlib_decode関数をいじめてみます。
php -r "\$s = zlib_encode(' ',ZLIB_ENCODING_DEFLATE); str_repeat(\$s, 100*1000*1000);"
PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 900000024 bytes) in Command line code on line 1
予想と違う結果で、きちんと設定値が返ってきました。ということは、
・cygwinのphpにメモリリーク
・phar がメモリを食いつぶしている
・composer がメモリを食いつぶしている
あたりが疑われます
これ以上の追及は時間の無駄(というかわからない)なので
dosプロンプトで実行して解決
curl -O https://getcomposer.org/composer.phar
php composer.phar オプション
php composer.phar オプション
カテゴリー: レンタルサーバーやcgi
2018.06.20
>pip3 list --o
python3最新版をいれたのにアップグレードが表示されるとは・・・。
>pip3 install --upgrade pip
>pip3 list --o
pip (9.0.3) - Latest: 10.0.1 [wheel]
setuptools (39.0.1) - Latest: 39.2.0 [wheel]
You are using pip version 9.0.3, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
setuptools (39.0.1) - Latest: 39.2.0 [wheel]
You are using pip version 9.0.3, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
python3最新版をいれたのにアップグレードが表示されるとは・・・。
>pip3 install --upgrade pip
Collecting pip
Downloading https://files.pythonhosted.org/packages/.../pip-10.0.1-py2.py3-none-any.whl (1.3MB)
Installing collected packages: pip
Found existing installation: pip 9.0.3
Uninstalling pip-9.0.3:
Successfully uninstalled pip-9.0.3
Successfully installed pip-10.0.1
Downloading https://files.pythonhosted.org/packages/.../pip-10.0.1-py2.py3-none-any.whl (1.3MB)
Installing collected packages: pip
Found existing installation: pip 9.0.3
Uninstalling pip-9.0.3:
Successfully uninstalled pip-9.0.3
Successfully installed pip-10.0.1
>pip3 list --o
Package Version Latest Type
---------- ------- ------ -----
setuptools 39.0.1 39.2.0 wheel
---------- ------- ------ -----
setuptools 39.0.1 39.2.0 wheel
カテゴリー: レンタルサーバーやcgi
2018.06.19