2012-07-19 10 views
6

kullanarak mod_rewrite için HTTP_HOST değişkeninin kapalı portunu kesmenin bir yolu var mı?RewriteRule Ben (ihtiyacım olanı budur) konak başlığından farklı olacaktır olarak</p> <p>mı bir RewriteRule içinde HTTP_HOST başlığını kullanmak ama SERVER_NAME kullanamıyorum bağlantı noktasını değiştirmeniz gerekir HTTP_HOST ve farklı bir port

+0

Farklı bir bağlantı noktasında Apache çalıştırıyorsunuz demek istiyor musunuz? – Devraj

+0

% {SERVER_PORT} sunucunun bağlantı noktasını içerir. Sorunuzu daha açıklayıcı olacak şekilde düzenler misiniz? –

+0

Uygun harici sunucuya yönlendirmek için http_host kullanmanız gerekir. Bu sanal site 80 – arcyqwerty

cevap

9

Evet, bağlantı noktasını ana bilgisayar üstbilgisini kapatabilirsiniz. Sadece %{HTTP_HOST}'a karşı eşleşin ve %1 geri tepme kullanın. Örneğin:

RewriteCond %{HTTP_HOST} ^([^:]+)(:[0-9]+)?$ 
RewriteRule^http://%1:12345/ [R,L] 

Sadece bir maçta %1 geribaşvuru sadece RewriteCond ilk parametresinde kullanılabilir unutmayın ve:

RewriteCond %{HTTP_HOST} ^([^:]+)(:[0-9]+)?$ 
RewriteCond %1 ^the.hostname.com$ [NC] 

tamam

RewriteCond %{HTTP_HOST} ^([^:]+)(:[0-9]+)?$ 
RewriteCond %{REQUEST_URI} ^%1 

OKT

+0

numaralı bağlantı noktasında değil. Sorunumu çözdüğümü düşünüyorum. Teşekkürler! :) – arcyqwerty

İlgili konular