manjilab
フォーラムへの返信
-
フォーラム: 使い方全般
返信が含まれるトピック: WordPressのパーマリンクのURL・大文字小文字半角スペースどころか
http://ja.wordpress.org/2009/11/18/wordpress+wins%20cms-award<tag%20here>&hoge;/
(ファイル名部分は : /wordpress+wins cms-award<tag here>&hoge;/)などでもOKですよ。
URLから得られたファイル名はデータベースで検索をかける前にサニタイズされていて
その段階で全角スペースや+は-に、タグ等は削除されています。フォーラム: インストール
返信が含まれるトピック: 既存のディレクトリにアクセスできなくなりましたざっと検索してみたところ、あちこちのフォーラムで同様の症状で悩んでいる人をみつけました。
しかし残念ながら解決にいたっている事例は見つけられませんでした。http://forums.htmlcenter.com/servers/2513-htaccess-rewrite-http-authentication.html
http://wordpress.org/support/topic/221230?replies=2
http://www.webmasterworld.com/forum92/5490.htmRewriteEngine On
の下に
RewriteOptions Inherit
と書けばいいというアドバイスもありましたが、うまくはいってないようです。ここからは「僕ならこうする」的な指針ですが、
・まずWebサーバのログを見てどのようにURLを解決しているかを調べます。
・次に、この現象がWebサーバのバージョンに依存したバグの可能性を考えてサーバをアップデートします。いずれもサーバの管理者クラスでないと現実的ではではないのですが、他に良い方策が思い浮かびません。
フォーラム: インストール
返信が含まれるトピック: 既存のディレクトリにアクセスできなくなりましたうーん。困りました。
当方のサーバで実験してみたのですが、正常に動作してしまうんですよね。設定ファイルはそれぞれ
# wordpress/.htaccess # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress# wordpress/members/.htaccess AuthType Basic AuthName "Restricted Area" AuthUserFile "/****/***/.htpasswd.members" require valid-user Options +ExecCGI AddType application/x-httpd-cgi .cgiで(パスは伏せ字)、ダミーで設置した
wordpress/members/index.html (静的ファイルのテスト用)
wordpress/members/hello.cgi (CGIテスト用のPerlスクリプト)
のいずれにも認証付きでアクセスできています。Webサーバの設定からの問題になってしまうのでしょうか。謎ですね。
解決に至らなくてすみません。フォーラム: テーマ
返信が含まれるトピック: get_post()関数蛇足かも知れませんが・・・
直接数値を入れるとダメなんですね…。
なぜ直接の値ではだめかというと、get_post関数の定義が
function &get_post(&$post, $output = OBJECT, $filter = 'raw')と、post_idを参照で受け取っているので変数としての実体が必要なのです。
フォーラム: インストール
返信が含まれるトピック: 既存のディレクトリにアクセスできなくなりましたなるほど。今はドキュメントルートにある .htaccess を削除してもCGIが有効にならないのですね。
もともとあった .htaccess でCGIを有効にしてあったものを WordPressインストール時に消してしまった可能性はないでしょうか。
だとすると、/.htaccess を消したままで /members/.htaccess に
Options +ExecCGI AddType application/x-httpd-cgi .cgiなどと書くと動かないでしょうか?
(.cgi の部分は動かすCGIファイルの拡張子に合わせてください)それでCGIの動作が確認できれば、次は /.htaccess を復活させて様子を見てください。
うまくいけばよし、もし不具合が起きるようであれば /.htaccess を
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} !^/members/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]のように1行だけ加えてみてください。
フォーラム: インストール
返信が含まれるトピック: 既存のディレクトリにアクセスできなくなりましたそのケースだと .htaccess の影響だといっていいでしょうね。
しかし肝心の設定が見られなければ、どう修正すればよいかをアドバイスしにくいです。
フォーラム: 使い方全般
返信が含まれるトピック: WordPressのパーマリンクのURL・大文字小文字おそらく仕様ですね。ぴったり該当する URL がなくても、似たものがあればそれを表示する仕組みになっているためです。
と言うより「MySQLでの該当カラムがBinary属性ではないので大文字/小文字を区別しないため」だと思われます。
(実際にデータベース内のpost_nameに対して検索をかけると大文字/小文字の区別なくマッチします。)
WordPressのソースコードを読む限り、とくに変わった処理をしてはいないようでした。このようなプラグインを見つけましたがいかがですか?
permaLowercase301 – Plugin Directory
マッチしない場合はちゃんと301でリダイレクトしてくれるようです。フォーラム: テーマ
返信が含まれるトピック: Fatal errorが起きるのは向こうの初期ミス?テーマはこれですよね→ PressBox Limited
ダウンロードしてソースを読んでみたところ、includes/minibar.php で登場する
wp_widget_(ウィジェット名) という形の関数呼び出しは
現在のバージョンのWordPressではサポートされていないように見えます。配布元が対応するか、自分で修正するしかないでしょうね。