Network(Multisite)でwp 3.0.5サイトでニスを使用しようとしています。ニスのURLにアクセスすると、次のメッセージが表示されます。
Multisite only works without the port number in the URL.
これを機能させるにはカスタムVCLが必要ですか?私はうまく動作する他のワードプレスサイトにも同じバックエンド設定を使用しています。
私がserverfaultでこれを尋ねる必要があるならば、私に知らせてください、そして、私はそこに尋ねます。
私はここで修正を見つけました: http://core.trac.wordpress.org/ticket/15936
基本的には、wp-includes/ms-settings.phpを次のように修正する必要があります( ' - '行を削除し、 '+'行を追加します)。
@@ -26,18 +26,8 @@
if ( !isset( $current_site ) || !isset( $current_blog ) ) {
+ $_SERVER['HTTP_Host'] = preg_replace( '|:\d+$|', '', $_SERVER['HTTP_Host'] );
$domain = addslashes( $_SERVER['HTTP_Host'] );
- if ( false !== strpos( $domain, ':' ) ) {
- ....
- wp_die( /*WP_I18N_NO_PORT_NUMBER*/'Multisite only works without the port number in the URL.'/*/WP_I18N_NO_PORT_NUMBER*/ );
- }
- }
そのWordpressのエラーメッセージはおそらく誤解を招くでしょう。
Wordpressはドメイン名を $_SERVER['HTTP_Host']
(PHP Manual) で検索し、それにポート番号が含まれている場合( http:// exampleのように:で区切ります) .com:444 / )ポート80とポート443の2つのバリエーションしか受け付けません。
私はあなたのニスの設定で他のポートが与えられていると思いますので、あなたはそのポートにぶつかります。
私はニスの専門家ではありませんが、それが私がいじり始めるところです。まず最初にその値を出力します。問題のファイルは/wp-includes/ms-settings.php
、〜38行目です。wp_dieステートメントの前にvar_dump($_SERVER['HTTP_Host']);
を追加することができます。