Apache統合スレ 12 (HTTPServer以外も含む) (703レス)
1-

156
(1): 2014/08/26(火)14:10 ID:??? AAS
\x は生でその値なんだろう、エンコードされてない
157
(1): 2014/08/26(火)14:11 ID:??? AAS
Xserver環境、がよくわかんないけど
通常のWebブラウザ使ってるなら、漢字をエンコードしてるのはブラウザだよ。
158: 155 2014/08/26(火)14:32 ID:??? AAS
>>156
>>157

ありがとうございます。
php側でurlエンコードして、そのアドレスからアクセスしているのですが
Xserverだけログを見るとなぜかurlエンコードされておらず素の値になっています。
(さくらインターネットのapacheログにはちゃんとエンコードされた値が入っています。)

下記のサイトでapacheの癖?というものを見つけて少し気になってもいます。

外部リンク[html]:colo-ri.jp

さくら環境で動くということは、サーバ側の問題なのかと思っているのですが、手詰まりでして悩んでいます。
(そもそも日本語を使うな!と言いたいのですが。)
159: 2014/08/26(火)15:20 ID:??? AAS
accesslogとerrorlogでどうなってる?
もともと\x で問題ないはずだけど、サーバ側のファイル名の文字コードが違うだけでないの?
160: 2014/08/26(火)17:12 ID:??? AAS
あーそれ、昔なったわ。
どうやって解決したか忘れたけど、直したな
161: 155 2014/08/26(火)17:17 ID:??? AAS
>> 159

ありがとうございます。
access_logとerror_logは以下のようになっています。
(IP等、一部伏字にしました。)
access_logとerror_logでファイル名部分がなぜか変っています。(%→\x)

access_log:
113.xxx.xxx.xxx - - [26/Aug/2014:17:07:13 +0900]
"GET /schedule/upload/%E3%83%86%E3%82%B9%E3%83%88.pdf HTTP/1.1" 404 2275
"外部リンク[php]:www.example.com
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36"
省5
162: 2014/08/26(火)17:34 ID:??? AAS
Xserverはapache 2.2か
163: 2014/08/26(火)17:40 ID:??? AAS
その
/home/xxx/xxx.jp/public_html/schedule/upload/テスト.pdf
は存在するの?
ファイル名はUTF-8で保存されているの?
164: 155 2014/08/26(火)18:06 ID:??? AAS
はい、
/home/xxx/xxx.jp/public_html/schedule/upload/テスト.pdf
は存在しています。

試しにFTPクライアントでディレクトリを開いて、英語名「test.pdf」にすると表示されるのですが、
日本語に戻すと表示できなくなります。

念のため、UTF-8Nでテキストファイルを作って同じようにやってみたのですが
やはり日本語名だと表示が出来ないような状態です。
165: 2014/08/26(火)18:36 ID:??? AAS
もしもファイル名がUTF-8なら、
/home/xxx/xxx.jp/public_html/schedule/upload/\xe3\x83\x86\xe3\x82\xb9\xe3\x83\x88.pdf

/home/xxx/xxx.jp/public_html/schedule/upload/テスト.pdf

同じものを指してるはずだよ。
コンソールで ls で ちゃんと表示されてる環境で locale コマンドで見ても ja_JP.UTF-8とかって出る?
166: 155 2014/08/26(火)19:06 ID:??? AAS
SSHでつないでlocaleコマンドを打ってみました。
一応、ja_JP.UTF-8 など設定されているようです。

LANG=ja_JP.UTF-8
LC_CTYPE="ja_JP.UTF-8"
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_PAPER="ja_JP.UTF-8"
省8
167
(1): 2014/08/26(火)20:07 ID:??? AAS
関係あるでしょ
ftp使ったのかsambaなのかわからんけど
そのファイルを転送したツールの文字コード設定が間違ってるか
無変換で転送してるよ、たぶん
168: 155 2014/08/26(火)21:22 ID:??? AAS
>>167

ありがとうございます。
試しに、文字化けしている日本語ファイルをサーバ上でリネームして、
lsコマンドで正常に表示されるのを確認した後、
該当URLにアクセスすると無事に表示されました。

Apacheの設定ではなかったようで、大変失礼しました。
サーバやFTP系の文字コード周辺をもう一度見直してみます。
コメント頂いた方々、ありがとうございました。
169: 2014/09/17(水)15:58 ID:sMJjb/mB(1/2) AAS
win server2008 apache2.2系

basic認証を使用するために.htpasswdファイルを作成しました。
>htpasswd.exe -m .htpasswd user1

作成された.htpasswdファイルにコメントを追加したいのですが、
設定ファイルの文法が記載されたサイトはありませんか?
他の設定ファイルと同様に先頭#で良さそうなのですが確証がありません。
170
(1): 2014/09/17(水)16:09 ID:??? AAS
書式なんて無いと思う
1行に
ユーザid : ハッシュ値
が決められてるだけ
コロンがなけりゃ有効にならないから:入れなきゃいいだけじゃないかな
171
(1): 2014/09/17(水)16:26 ID:??? AAS
と、ちょっと試したけど #のユーザーはツールでも作れるけど
httpdのソース見たら 1文字目 # はスキップしてるわ
172
(1): 2014/09/17(水)16:41 ID:??? AAS
1) ググる
.htpasswd コメント - Google 検索
外部リンク:www.google.co.jp

2) 最初に出てきたページで答えを発見
.htpasswd生成 ベーシック認証のパスワードファイル作成 外部リンク:ao-system.net

まとめ:脳味噌は生きているうちに使うものだとおもう
173
(1): 2014/09/17(水)16:56 ID:sMJjb/mB(2/2) AAS
>>172
申し訳ないのですがhtaccessファイル内の話はしていません。

>>170-171
確認ありがとうございます。
こちらでもソースコードをダウンロードしてみたのですが、
mod_authn_file.c#check_password()内部の処理でしょうか?
174
(2): 2014/09/17(水)18:11 ID:??? AAS
>>173
そうだね、空行と行頭#をスキップしてる。
それ以外の部分はすべて#を特別扱いしてないけどね。
175
(1): 2014/09/17(水)18:16 ID:??? AAS
特別扱いしてない、と書いたのは、
htpasswd で #つきユーザー作成と
ブラウザで認証やってみた結果
ユーザーは作成できたけどhttpdエラーログにはユーザーnot found が残ってた。
1-
あと 528 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.279s*