2013-01-14 [長年日記]
_ [技術]client175をwsgi経由で使う
目的
client175はPythonでできたWebベースのmpdのクライアントソフト。自前のHTTPサーバも持っているが、mod_python経由でのApacheからの利用もやり方が公開されてる。
ただ今時のPython Webアプリならmod_wsgiだしそもそもmod_pythonは開発が止まっている。client175はcherrypyベースで、cherrypyはmod_wsgiに対応しているので普通にmod_wsgiで動くはず。と言うことでやってみた。
PythonやらApacheやmod_wsgiがインストールされているのは大前提として、大筋は
- client175インストール
- site.confの"server_root"設定
- wsgiのラウンチスクリプト作成
- httpd.conf修正
である。以下手順ではApache-2.2.23、mod_wsgi-3.4、client175_0.7.tar.gzを使用している。
client175インストール
単純にアーカイブを展開するだけである。場所はどこでも。私は/usr/local/www/以下にした。なので/usr/local/www/client175に関連ファイルがおかれている。そのディレクトリはApacheの起動ユーザが書き込みできる権限にしておく。
site.confの"server_root"設定
URL的に、サーバの直下(http://xxxx/)でclient175にアクセスする形なら設定する必要はないが、普通はサブディレクトリを切る形(http://xxxx/client175/)で使うはずなので、そのサブディレクトリ名をここに設定する(この場合は"client175")。site.confのそのほかの設定も適切にやっておく。
wsgiのラウンチスクリプト作成
wsgiで起動させるのに必要なコードを作成する。server.py内に直接書いても良いくらいだが、Version Up時に楽なように切り出しておく。
import sys
sys.stdout = sys.stderr
sys.path = ['/usr/local/www/client175', '/usr/local/www/client175/cherrypy'] + sys.path
import server
server.serverless()
def application(environ, start_response):
return server.cherrypy.tree(environ,start_response)
3行目のsys.pathの行は、環境に合わせてclient175がインストールされているディレクトリを設定する。これを任意の名前で(俺は"client175.wsgi"にしておいた)、client175のserver.pyと同じところ(この例では/usr/local/www/client175)に置いておく。
httpd.conf修正
httpd.confに以下を設定する。WSGIScriptAliasの行の1つめの設定値はsite.confの"server_root"設定と同じに、2つめの設定値はwsgiのラウンチスクリプトをフルパスで指定する。
WSGIScriptAlias /client175 "/usr/local/www/client175/client175.wsgi"
<Directory "/usr/local/www/client175/">
Order deny,allow
Allow from all
</Directory>
あとはApacheを再起動したら、http://xxxx/client175/(site.confの"server_root"設定がこの例と違うならそのようなURLに)にアクセスすれば、使えるようになっているはずだ。
それからこの設定だと、client175はApacheのhttpdプロセスの数だけ立ち上がるので、その数だけmpdに接続が発生する。よって接続される側のmpd.confの"max_connections"を、httpdのプロセス数より多く設定する必要がある。再起動などでの再接続なども考えると、2倍以上の数を設定しておいた方がよい。
- 48945 http://synthroid1.com/
- 46002 http://lasix100.com/
- 45872 http://amoxicillin500.com/
- 45560 http://doxycycline1.com/
- 45442 http://tadalafil2.com/
- 40686 http://ishida.2-d.jp/?date=20100325
- 34862 http://lisinopril40.com/
- 26756 http://ventolin90.com
- 26689 http://doxycycline100.com
- 26676 http://lisinopril20.com
- 26456 http://amoxicillin8.com
- 26414 http://lasix40.com
- 26164 http://prednisolone5.com
- 25557 http://valtrex1.com/
- 23753 http://albendazoletablets.com/
- 23591 http://albuterol100.com/
- 23575 http://prednisolone40.com/
- 22450 http://tadalafil20tab.com/
- 20114 http://valtrexcost.com
- 19951 http://prednisolone40.com
- 19945 http://tadalafil40.com
- 19749 http://albendazoletablets.com
- 12133 http://edpillsonline.fun
- 11900 http://clomid2.com/
- 11765 http://synthroidlevothyroxine.com
- 11580 http://prednisone0.com/
- 10424 http://retina0.com/
- 10357 http://zithromaxazithromycin.com/
- 10317 http://tadalafil100.com/
- 9265 http://1onlinepharmacy.site
- 9017 https://pharmacycanadafb.com
- 8964 https://vardenafil20.com
- 8841 http://canadianonlinepharmacyhq.com
- 8748 http://prednisone2.com
- 8656 http://ishida.2-d.jp/
- 7669 https://edpillsx.pro
- 7548 http://albuterolhf.com
- 7439 http://propecia5.com
- 7365 http://valtrexcost.com/
- 7110 http://bupropionsr.com/
- 6927 http://pharmacyonlinerx.site
- 6321 https://xuonlinepharmacy.com
- 5999 http://diflucan.ru.com
- 5896 http://finasteridexl.com
- 5809 http://xenicalcapsules.com
- 5391 https://pharmacyonline.fun
- 5300 https://lasix40.site
- 4957 http://spicyypharm.top
- 4850 http://ishida.2-d.jp/?date=20130114
- 4783 http://propecia.ru.com
- 4707 http://www.onlinepharmacycanadaus.com
- 4403 http://bestpricecialis.com
- 4384 http://metformin500.com
- 4378 http://levitra911.com
- 4344 http://pharmacyreth.com
- 4110 http://xlppharm.com
- 3969 https://clomid7.com
- 3903 https://accutanexs.top
- 3675 http://isotretinoinrx.science
- 3415 http://lolasix.info
- 3390 https://xn----jtbjfcbdfr0afji4m.xn--p1ai
- 3303 http://ishida.2-d.jp/?date=20041027
- 3251 https://xn----jtbjfcbdfr0afji4m.xn--p1ai/
- 3146 https://canadian-drugstorerx.com
- 3133 https://falco3d.com/
- 3124 https://lasixfx.top
- 3044 https://lolz.guru/market/
- 3043 https://buytizanidinee.top
- 3003 http://amoxicillinwithoutprescription.com
- 2998 https://lolz.guru/market
- 2994 http://onlineuspharmacies.party
- 2966 http://cialis5.com
- 2964 http://zoloft50.com
- 2948 http://busparonline.com
- 2943 http://stromectol3.com
- 2934 http://cialissmx.com
- 2925 http://atenolol50mg.com
- 2916 https://mexicopharm.top
- 2902 http://advairinhalers.com
- 2883 http://onlinepharmacyrx.ru
- 2856 http://prednisolone10.com
- 2856 http://erectionpills365.com
- 2850 http://buyciproonline.com
- 2841 http://ataraxgeneric.com
- 2824 http://onlinepharmacy-ca.com
- 2773 https://lolz.guru/articles
- 2749 https://lolz.guru/articles/
- 2733 http://cialisfreetrial.site
- 2721 https://falco3d.com
- 2615 http://svetka.info
- 2560 http://propecia.site
- 2466 http://onlinepharmacycanadaus.com
- 2434 https://propeciahair.shop
- 2407 http://online-pharmaciescanada.com
- 2395 https://mexicanxlpharmacy.com
- 2360 http://mexicanonlinepharmacy.store
- 2347 http://canadian-drugstorerx.com
- 2326 http://buyeddrugs.com
- 2288 http://canadianonlinepharmacyllp.com
- 2256 http://mexicanonlinepharmacyhq.com
<<
2013/01/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
1. client175をwsgi経由で使う
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

このworkは、クリエイティブ・コモンズ・ライセンスの下でライセンスされています。