J'ai travaillé sur un projet pendant un certain temps et il a un serveur HTTP intégré qui fonctionne sur le port 8080. Les utilisateurs sont invités à accéder à l'appareil via, par exemple. http://192.168.1.4:8080/ - fonctionne très bien. Récemment J'ai réalisé que les applications peuvent utiliser le port 80 pour supprimer le besoin de ": 8080", mais si j'essaie de définir le port à 80, je reçois un plantage avec "Erreur CFSocket générale".Serveur Web sur le port 80 sur l'iPhone
Des idées comment activer le port 80 pour un serveur web sur une application?
Quelques captures d'écran où cela se passe:
d'abord - sur l'iPad, l'application affiche les URL où vous pouvez accéder.
iPad http://enrogue.com/port80/ipad.jpg
Second - Firefox, par IP:
FF by IP http://enrogue.com/port80/firefox_byip.png
ci-dessus sont d'une application réelle sur le magasin, ce n'est pas jailbreaké magique ou quoi que ce soit. Je sais que les ports < 1024 sont réservés à l'administrateur sur les systèmes UNIX, donc l'application ci-dessus fait évidemment quelque chose de spécifique pour avoir accès au port.
Toute chance une autre application utilise ce port, ou vous avez ouvert le port du passé avec votre application et oublié de nettoyer correctement? Essayé de mettre hors tension et de revenir sur le téléphone, puis essayer frais? – Steve
J'ouvre mon application, plantage, ouvre une autre application, fonctionne, ouvre mon application, plantage. Non, pas un problème de nettoyage. – Kalle
Oh, et ce n'est pas iOS 4 donc pas d'autres applications sont en cours d'exécution. Et je pense que le fait de conserver une socket réseau dans iOS 4 en arrière-plan entraîne la fermeture immédiate, ce qui ne devrait donc pas être le cas. – Kalle