2010-05-10 25 views
0

J'ai un blog WordPress fonctionnant sur lighttpd-1.4.19, en écoutant www00: 81. Sur le même hôte, Apache-2.2.11 écoute sur le port 80, ce qui crée une connexion proxy de http://blog.mydomain.org:80 à http://blog.mydomain.org:81 (les deux étant la même machine physique).

Le VirtualHost Apache se présente comme suit:

<VirtualHost *:80> 
    ServerName blog.mydomain.org 
    ProxyRequests Off 

    <Proxy *> 
    Order deny,allow 
    Allow from all 
    </Proxy> 

    ProxyPass/http://blog.mydomain.org:81/ 
    ProxyPassReverse/http://blog.mydomain.org:81/ 
</VirtualHost> 

En utilisant debug.log-request-handling = "enable", je reçois l'entrée du journal suivant lorsque je passe en revue http://blog.mydomain.org:80 (notez les Host têtes):

2010-05-10 08:47:14: (request.c.294) fd: 6 request-len: 853 
GET/HTTP/1.1 
Host: blog.mydomain.org:81 
[...] 

2010-05-10 08:47:15: (request.c.294) fd: 8 request-len: 754 
GET /wp-content/uploads/2010/01/image.gif?w=280 HTTP/1.1 
Host: www00:81 

Mon problème: dans la mesure comme je le sais, la variable d'environnement PHP $_SERVER['HTTP_HOST'] est définie sur cette variable d'en-tête Host. Malheureusement, WordPress utilise cette variable dans leur système pour créer des URL pour les photos sur le blog. Ces URL ne seront pas accessibles derrière un pare-feu bien sûr. Comment puis-je forcer l'en-tête d'hôte à blog.mydomain.org au lieu de blog.mydomain.org:81, respectivement www00:81? J'ai déjà ajouté set server.name = "blog.mydomain.org" à mon lighttpd.conf, mais cela n'a pas fonctionné.

Toutes les suggestions sont appréciées, merci.

Répondre

2

Avez-vous essayé d'éditer votre wp-config.php? Il devrait être possible de remplacer la détection automatique de l'hôte.

A savoir:

+0

A '' print_r' sur _SERVER' $ montre '[HTTP_HOST] => blog.mydomain.org: 81' , donc il contient le numéro de port. Malheureusement, je ne peux pas déplacer 'blog.mydomain.org' sur le port 80 (c'est une histoire vraiment compliquée, pour des raisons multiples, je veux lancer le blog sur un service web séparé). Et oui, j'aurais dû le poster sur serverfault.com. – watain

+0

@watain oh, je suis corrigé re le 'HTTP_HOST', désolé. Je vous ai mal lu. Mise à jour ma réponse –

+0

Non, je n'ai pas encore édité 'wp-config.php'. Que devrais-je changer? J'ai changé à la fois l'adresse WordPress (URL) et l'adresse Blog (URL) du panneau d'administration wordpress à la bonne valeur (http: // blog.mydomain.org), mais cela n'a pas beaucoup changé non plus. EDIT: Ok. Je vais vérifier ces variables. – watain