Pergunta

Eu uso atualmente o meu servidor web local para permitir que clientes para pré-visualizar algumas aplicações e também para permitir as transferências de "nightly builds" de minha biblioteca de código aberto.

O problema é que eu mudei de ISP e agora a minha porta 80 está bloqueada.

Altough Eu sei que poderia facilmente mudar a porta no servidor Apache, eu gostaria de evitar que a menos que não há alternativa.

Você sabe qualquer serviço de terceiros (gratuito ou pago) que iria fazer uma porta para a frente para o meu site, tornando mais transparente a alguém acessá-lo?

Uma outra idéia que eu ouvi sobre usava mod reescrever de minha hospedagem atual para reescrever a meu domínio, mas eu também preferem não ir por esse caminho. Além disso, você sabe algum exemplo .htaccess que realmente funcionam? Eu tentei isso:

RewriteEngine on
RewriteRule ^/(.*) http://www.example.com:8080/$1

Mas isso não parece estar funcionando.

Foi útil?

Solução

O que eu gostaria é para o cliente para tipo http://myaddress.com/hello/there?a=1&b=2 e são traduzidos para http://mylocalserver.com:8080/hello/there?a=1&b= 2 e de volta para o cliente em um forma transparente.

Eu acredito que este é o Apache RewriteRule você está procurando para redirecionar qualquer URL:

RewriteRule ^(.*)$ http://mylocalserver.com:8080$1 [R]

A partir de então o cliente vai estar navegando mylocalserver.com:8080 e é isso que eles vão ver na barra de endereços. Se o que você quer dizer com "e vice-versa" é que eles ainda pensam que estão myaddress.com navegação, então o que você está falando é um servidor proxy reescrever.

Por isso, quero dizer que você teria que reescrever todos os URLs não só em cabeçalhos HTTP, mas em seu conteúdo HTML bem (ou seja, fazer uma pesquisa regex / substituir o HTML), e decodificar, reescrever e reenviar todos GET, POST , colocar os dados, também. Uma vez escrevi uma procuração, e deixe-me dizer-lhe que não é um exercício trivial, embora a princípio pode parecer simples.

Eu diria, apenas ser feliz se você pode obter o redirecionamento para o trabalho e deixá-los mylocalserver.com:8080 browse a partir desse ponto.

Outras dicas

"e de volta para o cliente de forma transparente" .... vai ser cuidado por NAT modo que não deve ser um problema.

Para lidar com a tradução do pedido de uma cadeia para outra, bem, isso é um problema desde que você precisa para transformar o pedido antes de atingir o servidor. Olhar em algum tipo de serviço de encaminhamento de URL

http://www.dnsexit.com/Direct.sv?cmd=webforward

Além disso, você pode configurar um site separado em um servidor do provedor e tê-lo encaminhar solicitações para o endereço específico / link em seu servidor.

Espero que isso ajude!

Com a porta 80 a ser bloqueada, roteamento através Dynamic Service win't ajuda, a menos que especifica cliente a nova porta no domínio.

Tenha o seu router local "porta-forward" o tráfego de um novo porto (digamos 8080) para a porta 80. Deixe tudo igual em sua extremidade.

Crie uma conta com DynDNS.org e configurar o serviço dinâmico. Então, o seu cliente fazer http://mydomain.com:8080

Isso deve fazer o truque

Ainda olhar para sugestão de Rolf como eles não são reais ISP, .... sério.

Graças

Se você não pode obter o seu ISP para abrir a porta 80 para você, e você não pode mudar ISPs, em seguida, usar a diretiva htacccess redirecionamento:

Redirect 301 / http://yourserver.com:8000/

Os usuários podem notar o redirecionamento, mas eles provavelmente não vai se importar.

Bem, mesmo que eu apreciei as respostas, eu não estava muito satisfeito com o resultado final. Eu queria que meu ISP muda para ser transparente para os meus clientes e eu acho que eu consegui fazê-lo funcionar.

Aqui está o que eu fiz:

Eu contratei um barato VPS servidor - VPSLink - e escolheu o seu plano mais barato: 64Mb RAM, 2 GB de HD e 1 GB tráfego mensal. Depois de uma vida 10% de desconto foi apenas US $ 7,16 por mês, bastante acessível para o trabalho e você recebe uma caixa de areia VPS servidor como um bônus. A hospedagem parece tão longe tão bom - sem problemas. Se você quiser dar-lhe um tiro você pode inscrição de seu local, indicado acima ou através de um código de referência. Há um monte disponíveis na internet, você só precisa procurar. Além disso, eu posso facilmente criar um para você, se quiser, basta deixar um comentário sobre esta resposta: você terá 10% de desconto e eu um mês grátis. Eu não vou postar o diretamente aqui, porque pode parecer que era a intenção por trás deste post - o que não era.

Esta conta é não gerenciado mas fornece acesso root. Eu, então, configurado apache para agir como um proxy para os meus porta 80 solicitações, de forma transparente encaminhá-los para o meu site local na porta 8081.

Abaixo estão alguns trechos do meu httpd.conf de configuração arquivos do Apache.

configuração VPS Servidor:

<VirtualHost *:80>
    ServerName mydomain.com
    ServerAlias www.mydomain.com *.mydomain.com
    RewriteEngine On
    RewriteCond %{HTTP_HOST} (.*)\.mydomain\.com [NC]
    RewriteRule (.*) http://mylocalserverdns.mydomain.com:8081/%1$1 [P]
</VirtualHost>

Isso faz com pedido como http://subdomain1.mydomain.com/script?a=b para ser transparente encaminhado no lado do servidor para http: // mylocalserverdns. mydomain.com:8081/subdomain1/script?a=b , para que eu possa fazer o que quiser a partir daí.

No meu servidor local, eu fiz a mesma coisa para distribuir meu manipulador subdomínios. Eu tenho, por exemplo, duas aplicações de servidor Java que roda em portos 8088 e 8089 localmente. Tudo o que eu tinha a fazer era outro proxy para a frente, agora internamente

configuração do servidor local:

<VirtualHost *:8081>
    ServerName mylocalserverdns.mydomain.com

    ProxyPass /app1 http://127.0.0.1:8088
    ProxyPassReverse /app1 http://127.0.0.1:8088
    ProxyPassReverse /app1 http://mylocalserverdns.mydomain.com:8088/app1

    ProxyPass /app2 http://127.0.0.1:8089
    ProxyPassReverse /app2 http://127.0.0.1:8089
    ProxyPassReverse /app2 http://mylocalserverdns.mydomain.com:8089/app2
</VirtualHost>

Espero que isso vale a pena se alguém está procurando a mesma alternativa.

Eu penso serviços maioria DynamicDNS permitir a porta-forwarding.

Pergunte ao seu ISP porque este é, e se você não obter uma resposta, ISPs interruptor novamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top