2010-01-07 6 views
1

J'ai une configuration zinstance par Apache Proxy sur OS X Server 10.5. Le serveur est configuré avec un seul serveur virtuel sur le port 80, avec les directives Proxy & PROXYPASS au zinstance Plone: ​​Plone avec Apache Proxy

 ProxyPass/http://localhost:8080/VirtualHostBase/http/server:80/Plone/VirtualHostRoot/ 
     ProxyPassReverse/http://localhost:8080/VirtualHostBase/http/server:80/Plone/VirtualHostRoot/ 

Cependant, j'ai quelques HTML statique et contenu PHP que je veux afficher dans une iframe via le site de plone. Je pense que je vais devoir mettre en place un autre vhost sur un port différent, puis spécifier le port # inline?

+0

Je l'ai trouvé là où je peux voir l'iframe dans plone. Je sers un vhost supplémentaire sur le port 8888 disponible pour localhost seulement. Je peux voir la première page, mais si j'essaie de cliquer sur l'un des liens à l'intérieur qui devrait m'amener à une page php, il se trouve juste là. – churnd

Répondre

2

une URL Set statique qui ne sera pas, mais servi de proxy Apache directement, comme ceci:

ProxyPass /static ! 
ProxyPass/http://localhost:8080/VirtualHostBase/http/server:80/Plone/VirtualHostRoot/ 
ProxyPassReverse/http://localhost:8080/VirtualHostBase/http/server:80/Plone/VirtualHostRoot/ 

Ensuite, configurer/statique pour contenir votre contenu statique.

0

Désolé, pas assez d'informations mais je vais vous offrir quelques commentaires qui pourraient vous aider à vous orienter dans la bonne direction. Premièrement, ProxyPassReverse n'est pas nécessaire car Plone prend déjà en charge la correction de toutes les URLs auto-référencées. C'est le point de l'URL folle après tout.

Une autre affiche a déjà montré comment configurer ProxyPass pour passer sélectivement du proxy à Plone et servir directement depuis Apache. En ce qui concerne "l'hôte supplémentaire sur le port 8888". Ce n'est pas clair ce que vous voulez dire par là. Quelle est la portion supplémentaire de vhost? Si c'est de là que votre contenu html et php statique est supposé provenir, alors restreindre à localhost signifie seulement que vous devrez également configurer un proxy interne pour l'atteindre. Vous pouvez le faire avec des règles de réécriture, mais cela semble être une façon trop compliquée d'y aller. Pourquoi ce vhost n'est disponible que pour localhost? D'ailleurs, pourquoi utiliser un vhost séparé ... vous pouvez tout faire (Plone, fichiers statiques et PHP) en un seul vhost avec les lignes ProxyPass appropriées (ou les lignes Rewrite si vous avez besoin de plus de flexibilité).

1

Je vous recommande de rouler votre configuration dans un bloc hôte virtuel. Vous pouvez fournir du contenu statique directement à partir d'Apache en réécrivant un chemin spécifique. Voici un exemple

<VirtualHost *:80> 
    ServerName yoursite.com 
    Alias /static /var/www/some/path/ 

    <Directory "/var/www/some/path"> 
    Options Includes FollowSymLinks 
    AllowOverride All 
    </Directory> 

    # Zope rewrite. 
    RewriteEngine On 
    RewriteRule /static - [L] 
    RewriteRule ^/(.*) http://127.0.0.1:8080/VirtualHostBase/http/%{SERVER_NAME}:80/Plone/VirtualHostRoot/$1 [L,P] 
</VirtualHost> 
+0

Je suis toujours sur la clôture à propos de l'utilisation ou non d'une règle de réécriture ou proxypass – churnd