php - Penyemak imbas gagal mengakses program pelayan soket sebagai pelanggan?
世界只因有你
世界只因有你 2017-05-16 13:03:22
0
1
505

Adalah perkara biasa untuk menulis program klien soket untuk mengaksesnya Ia juga perkara biasa untuk menggunakan telent untuk mengaksesnya, tetapi apabila penyemak imbas mengaksesnya sebagai pelanggan, ia secara langsung melaporkan ralat dan tidak memasuki gelung sementara di. semua. Mengapa ini?

Akses penyemak imbas 127.0.0.1:8899
Atur cara pelayan keluar secara langsung dan melaporkan ralat: Kesalahan pembahagian (teras dibuang)

Kod pelayan mungkin kelihatan seperti ini

int main(int argc, char *argv[]){
    
    if(argc != 2){
        err_msg("Penggunaan: ./studyHttpd <alamat ip>\n");
    }

    struct sockaddr_in server_sock, client_sock;
    int sockfd, client_fd;
    int sin_size;
    pthread_tntid;
    
    if(-1 == (sockfd = soket(AF_INET, SOCK_STREAM, 0))) err_exit("soket");
    printf("ID soket = %d\n", sockfd);

    server_sock.sin_family = AF_INET;
    server_sock.sin_port = htons(PORT);
    server_sock.sin_addr.s_addr = INADDR_ANY;
    bzero(&(server_sock.sin_zero), 8);

    int i = 1;
    setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &i, saiz(i));
    
    if(-1 == bind(sockfd, (struct sockaddr *)&server_sock, sizeof(struct sockaddr))) err_exit("bind");
    printf("Ikat kejayaan\n");

    if(-1 == listen(sockfd, MAX_QUE_CONN_NM)) err_exit("dengar");
    printf("Listening port = %d\n", PORT);

    saiz_dosa = sizeof(client_sock);

    /*Pelayar tidak akan melaksanakan langkah ini sama sekali, pelanggan lain akan berfungsi seperti biasa*/

    manakala(1){
        if(-1 == (client_fd = accept(sockfd, (struct sockaddr *) &client_sock, &sin_size))) err_exit("accept");

        if(pthread_create(&ntid, NULL, (void *)handle, &client_fd) != 0) err_exit("pthread_create");
    }
    tutup(sockfd);
    pulangan 0;
}
世界只因有你
世界只因有你

membalas semua(1)
过去多啦不再A梦

Pelayar menggunakan protokol http dan soket biasanya menggunakan protokol tcp/ip

Protokol http mempunyai tajuk khas Tanpanya, sudah tentu ia tidak boleh diakses

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan