システム覚書帳

システム開発、プログラミングについての覚書をメモメモ

Apache

[Apache]RewriteCondとRewriteRuleは抱き合わせで

apacheは膨大な設定情報があり、難しい。

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/test/
RewriteRule ^/([0-9a-zA-Z]+)/$ /app/main [PT,L]
RewriteRule ^/([0-9a-zA-Z]+)/mode/$ /app/main?mode=1 [PT,L]

とすると、2つ目のRewriteRuleはRewriteCondの条件を踏襲してくれない。

つまり、
/test/以外の/test2/等でアクセスすると1つ目のルールに従ってURLが書き換わるが、
/test/mode/とアクセスすると2つ目のルールがヒットする。

複数のRewriteRuleにRewriteCondを対応付ける方法はないみたいで、
RewriteRuleごとにRewriteCondを指定する必要がある。

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/test/
RewriteRule ^/([0-9a-zA-Z]+)/$ /app/main [PT,L]

RewriteCond %{REQUEST_URI} !^/test/
RewriteRule ^/([0-9a-zA-Z]+)/mode/$ /app/main?mode=1 [PT,L]

RewriteCondは複数指定できるが、条件が複雑になってくると、同じ条件であっても
RewriteRuleごとにコピペしなくちゃいけないので、残念だ。。。

[Linux]Java,Tomcatインストール

OracleのJavaのサイトからLinux64ビット版のRPMをダウンロードしておく。

# rpm -ivh jdk-7u4-linux-x64.rpm
~~
# java -version
java version "1.7.0_04"
Java(TM) SE Runtime Environment (build 1.7.0_04-b20)
Java HotSpot(TM) 64-Bit Server VM (build 23.0-b21, mixed mode)
# javac -version
javac 1.7.0_04



続いてTomcat。
apache tomcatのサイトからZIP形式のモジュールをダウンロードしておく。
解凍&余計なフォルダ削除。

# unzip -d /usr/local/ apache-tomcat-6.0.35.zip
# cd /usr/local/apache-tomcat-6.0.35/webapps
# rm docs/ -rf
# rm host-manager/ -rf
# rm manager/ -rf



起動。実行権限がない場合は、エラーになるのでchmodしておく。

# cd ../bin
# sh startup.sh
Cannot find ./catalina.sh
The file is absent or does not have execute permission
This file is needed to run this program
# chmod +x *.sh
# sh startup.sh



ApacheとTomcatを連携。

# cd /etc/httpd/conf.d/
# vi proxy_ajp.conf

LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
ProxyPass /tomcat/ ajp://localhost:8009/

# service httpd restart
httpd を停止中: [ OK ]
httpd を起動中: [ OK ]




http://~~/tomcat/
とアクセスするとTomcatの画面が出てくる。


プロフィール

tak_bon

カテゴリ別アーカイブ
QRコード
QRコード
  • ライブドアブログ