|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Nov 2001
Messaggi: 206
|
Configurare WebServer con router
Dunque raga. Ho un problema e non riesco a venirne a capo.
Sto sviluppando un applicativo e ho bisogno di configurare un webserver per fare i test sul mio pc. Sul mio pc dunque devo installare e configurare un webserver. Ho messo EasyPhp. Il mio webserver deve utilizzare sql server come database. Ho messo sql server 2005 express (gratis). Configurato per ricevere connessioni esterne. Inizio dunque ad elencare i problemi. EasyPhp una volta funziona. Partiva sia Apache che Mysql (anche se non devo utilizzarlo). Adesso apache non vuole partire. Mi dice che la porta (80) è utilizzata da un'altro processo. Faccio un netstat e vedo effettivamente che è utilizzata 0.0.0.0:80. Cerco la soluzione. Forse è skype. Chiudo Skype. Nessun cambiamento. Cambio porta e metto 8080. Stesso problema. Anche qui con netstat 0.0.0.0:8080. Allora penso che sia questione di router!! Se si come risolvo??? Ps. Router Trust. OS Vista SP2. Firewall abilitati per apache,sqlserver. Andiamo avanti. Aggiro il problema di far partire EasyPhp. Creo una virtual machine con XP SP3. Installo EasyPhp e tutto funziona. Faccio dei test. Funziona sia la visualizzazione locale di pagine php che l'uso di database mysql. Adesso però ho la necessità di usare sql server 2005, che è residente fuori dalla virtual machine.Su php.ini abilito l'estensione per l'uso di mssql. Effettuo un phpinfo(); Tutto OK. Effettuo un test per connettermi al database. Non funziona! Questo il codice della pagina php per la connessione <?php $myServer = "79.18.xxx.xxx:1433"; $myUser = "miousername"; $myPass = "miapass"; $myDB = "miodatabase"; //connection to the database $dbhandle = mssql_connect($myServer, $myUser, $myPass) or die("Couldn't connect to SQL Server on $myServer"); //select a database to work with $selected = mssql_select_db($myDB, $dbhandle) or die("Couldn't open database $myDB"); ?> Apro IE e metto: http://127.0.0.1/prova.php L'errore naturalmente è sulla connessione al database Couldn't connect to SQL Server on 79.18.xxx.xxx:1433 79.18.xxx.xxx è il mio ip publico. Quello visto esternamente dalla mia LAN. Ho provato anche a cambiare e mettere quello assegnato dal mio router, cioè 192.168.1.10 Stesso risultato. Come faccio a connettermi al database sqlserver? Dunque cosa devo fare?Sto impazzendo. In parole povere. Dovevo creare un servizio webserver sul mio PC locale in modo che chiunque (sia dentro la mia LAN che fuori potessero accedere al mio database sql server) Ultima modifica di songoge : 16-10-2009 alle 10:04. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Dec 2007
Città: LIDV
Messaggi: 11489
|
Io non capisco cosa c'entri in tutto questo il router...
Da quello che ho potutto capire, stai utilizzando solo il tuo PC e/o macchine virtuali su di esso create... Aggiungo.... perchè nel codice php hai dovuto mettere 79.18.xxx.xxx:1433?
__________________
Si stava meglio quando si stava peggio |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Nov 2007
Messaggi: 1779
|
Quote:
Codice:
netstat -b
__________________
slowped |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 7863
|
senza una regola di loopback non puoi fare binding sull' ip pubblico iniziando la connessione da dentro la lan.
|
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Nov 2007
Messaggi: 1779
|
Quote:
http://www.php.net/function.mssql-connect con particolare riferimento alle "User Contributed Notes" (in fondo alla pagina): ci sono un paio di soluzioni proposte dagli utenti che hanno avuto problemi simili ai tuoi.
__________________
slowped |
|
![]() |
![]() |
![]() |
#6 | ||
Member
Iscritto dal: Nov 2001
Messaggi: 206
|
Quote:
Poco fa, grazie ad un mio amico ho fatto una prova. Sul suo pc ho installato easyphp,configuarato in modo che posso utilizzare le librerie di sql server. Sul mio pc ho soltanto il database sql server. Perfetto. Chiamando il mio amico nel suo browser http://127.0.0.1/prova.php riesce a connettersi al mio database. Ps. prova.php è quel codice di prima. e l'ip che chiedi tu è il mio ip publico. Altrimenti come fa a connettersi il mio amico al mio database?? ![]() ![]() Qui deduco che il database è settato bene. Accetta connessioni remote. Anche EasyPhp è settato alla perfezione. Se voglio adesso provare tutto sul mio pc? Senza dover disturbare il mio amico? Ecco perchè ho messo il post qui. Non so come configurare il mio router. Quote:
Grazie in anticipo. Ps. Anche libri da comprare vanno bene. Anzi, un buon libro sulle reti ecc non ne ho mai letti, e quindi mi farebbe bene ![]() |
||
![]() |
![]() |
![]() |
#7 | |
Member
Iscritto dal: Nov 2001
Messaggi: 206
|
Quote:
Cmq non risolvo il problema mi dice : C:\>netstat -a -b Connessioni attive Proto Indirizzo locale Indirizzo esterno Stato TCP 0.0.0.0:80 PC-MioPC:0 LISTENING Impossibile ottenere informazioni sulla proprietà ....ecc Che fortuna direi. ![]() Per gli altri ottengo risulati giusti. Ad es. vedo cosa fa firefox e su cosa è collegato |
|
![]() |
![]() |
![]() |
#8 | |
Senior Member
Iscritto dal: Nov 2007
Messaggi: 1779
|
Quote:
Quando hai dato il comando eri amministratore del PC? In caso contrario entra come amministratore e riprova. Altra cosa che ti consiglio di fare è di collegarti con un browser sulla porta 80 del tuo pc, in modo da vedere se risponde.
__________________
slowped |
|
![]() |
![]() |
![]() |
#9 | |
Member
Iscritto dal: Nov 2001
Messaggi: 206
|
Quote:
Facendo un http:\\127.0.0.1:80 sul mio browser spunta l'hello world di iis 7. Non ricordavo di averlo messo ![]() ![]() Come lo disattivo? |
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Nov 2007
Messaggi: 1779
|
Non hai bisogno di configurare il router se accedi solo in locale. Anzi, se lavori con il browser sulla macchina su cui sono installati il server web e MS sql server, potresti addirittura staccare il cavo di rete.
__________________
slowped |
![]() |
![]() |
![]() |
#11 |
Member
Iscritto dal: Nov 2001
Messaggi: 206
|
Come non detto. Ho trovato Gestione IIS
|
![]() |
![]() |
![]() |
#12 | ||
Senior Member
Iscritto dal: Nov 2007
Messaggi: 1779
|
Quote:
Quote:
Almeno questo cerca di scoprirlo da solo ![]()
__________________
slowped |
||
![]() |
![]() |
![]() |
#13 | |
Member
Iscritto dal: Nov 2001
Messaggi: 206
|
Quote:
![]() Ma io voglio forzarlo in modo che posso utilizzarlo mettendo nella stringa di connessione il mio ip pubblico. In questo modo posso accedere io e anche altri al database, utilizzando lo stesso file. Oppure faccio di forza bruta. Metto un if .Se non vede l'ip publico metto quello locale. Adesso provo. |
|
![]() |
![]() |
![]() |
#14 |
Member
Iscritto dal: Nov 2001
Messaggi: 206
|
|
![]() |
![]() |
![]() |
#15 |
Senior Member
Iscritto dal: Nov 2007
Messaggi: 1779
|
Scusa ma mi sfugge qualcosa. Gli altri non accedono direttamente al tuo database. Essi accedono al server web che poi comunica con il database. Se le cose stanno così, l'importante è che sia garantito l'accesso al server web tramite l'indirizzo pubblico.
__________________
slowped |
![]() |
![]() |
![]() |
#16 |
Senior Member
Iscritto dal: Dec 2007
Città: LIDV
Messaggi: 11489
|
Anche perchè dubito che tu abbia un IP pubblico statico....
__________________
Si stava meglio quando si stava peggio |
![]() |
![]() |
![]() |
#17 | |
Member
Iscritto dal: Nov 2001
Messaggi: 206
|
Quote:
Però se metto webserver e database nello stesso pc (solo per prova) Non funziona la stringa di connessione con ip publico (accedendo dal medesimo pc) Se separo allova va bene. L'obbiettivo finale è averli separati. Compro uno spazio web in cui posso usare php con le librerie per accedere a sql server. Il database lo lascio sul mio pc sempre connesso. Il problema è fare i test con tutto su una stessa macchina. Altrimenti se conoscete spazi web gratis che fanno al caso mio. Altervista non mi permette di modificare php.ini e quindi caricare la mia dll. Al momento non trovo nulla di gratis. Tutto a pagamento. No grazie ![]() |
|
![]() |
![]() |
![]() |
#18 | |
Senior Member
Iscritto dal: Nov 2007
Messaggi: 1779
|
Quote:
A questo proposito, se non hai un indirizzo IP pubblico statico, devi usare qualche servizio tipo Dyndns o no-ip. ALtrimenti ogni volta che cambia il tuo ip pubblico devi editare la stringa di connessione.
__________________
slowped |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:15.