personal web sharing

Posted:
in Genius Bar edited January 2014
when i try to turn on personal web sharing in system prefs>sharing>services it will just say "starting up..." and it wont change. when i quit system prefs it turns off. i have a cable modem and i use safari... help!

Comments

  • Reply 1 of 17
    thuh freakthuh freak Posts: 2,664member
    personal web sharing with osx (i'm not positive of this) uses apache. it may be a problem with you httpd.conf (located in the /etc folder, which is hidden in the finder). if you're comfortable with terminal, you can open that up, and type "sudo apachectl start". it will ask for your password. then it should try to start apache, and will tell you about any problems that occur in more detail. if you can understand them try to fix them, or else report back with the output.
  • Reply 2 of 17
    mattismattis Posts: 17member
    Quote:

    Originally posted by thuh Freak

    personal web sharing with osx (i'm not positive of this) uses apache. it may be a problem with you httpd.conf (located in the /etc folder, which is hidden in the finder). if you're comfortable with terminal, you can open that up, and type "sudo apachectl start". it will ask for your password. then it should try to start apache, and will tell you about any problems that occur in more detail. if you can understand them try to fix them, or else report back with the output.





    i did what you said and after i entered the password, this appeared...

    fopen: No such file or directory

    httpd: could not open document config file /etc/httpd/httpd.conf

    /usr/sbin/apachectl start: httpd could not be started



    what should i do... thanks.
  • Reply 3 of 17
    thuh freakthuh freak Posts: 2,664member
    ok, that's pretty bad. i didn't think that'd happen. back in terminal, try this: "ls /etc/ /etc/httpd/ /etc/httpd/httpd.conf". depending on the output, your /etc folder is gone (really bad), your /etc/httpd folder is gone (moderately bad) or your /etc/httpd/httpd.conf file is missing (bad). in any case, the third is probably true. hopefully, that will be the only thing missing.



    if it is the only thing missing, you have a couple of options. one: you could re-install macosx. two: you could find a friend and ask them to send you that file. i'd offer you mine, but i've hacked it up pretty bad.



    if the /etc/httpd folder is missing, and/or the /etc folder, i strongly recommend you re-install the operating system (the bsd subsystem may be a necessary switch to enable during that installation).
  • Reply 4 of 17
    mattismattis Posts: 17member
    this was my output... it doesnt look too promising so i have a freind who can send me what i need... what exactly should i ask him for?

    ls /etc/ /etc/httpd/ /etc/httpd/httpd.conf

    ls: /etc/httpd/httpd.conf: No such file or directory

    /etc/:

    6to4.conf group motd resolver

    X11 hostconfig named.conf rmtab

    X11.AppleBackup hostconfig~ networks rpc

    afpovertcp.cfg hosts ntp.conf rtadvd.conf

    authorization hosts.equiv openldap services

    bashrc hosts.lpd pam.d shells

    crontab httpd passwd slpsa.conf

    csh.cshrc hwmond.SMART periodic smb.conf

    csh.login iftab ppp smb.conf.template

    csh.logout inetd.conf primes ssh_config

    cups kcpassword printcap ssh_prng_cmds

    daily kern_loader.conf profile sshd_config

    defaults localtime protocols sudoers

    dumpdates magic racoon syslog.conf

    find.codes mail rc ttys

    fstab.hd mail.rc rc.boot ttys.installer

    fstab.rd manpath.config rc.cleanup weekly

    fstab.sd master.passwd rc.common xinetd.conf

    ftpusers moduli rc.netboot xinetd.d

    gettytab monthly resolv.conf xtab



    /etc/httpd/:

    httpd.conf.applesaved httpd.conf.rendezvous mime.types

    httpd.conf.bak magic mime.types.default

    httpd.conf.default magic.default users
  • Reply 5 of 17
    thuh freakthuh freak Posts: 2,664member
    thats actually very good output. better than i expected. i had feared the worst. do this: "sudo cp /etc/httpd/httpd.conf.applesaved /etc/httpd/httpd.conf" (typign your password when/if asked). then try "sudo apachectl start" again.



    edit: fyi, the httpd.conf.applesaved is an old version of the missing file, that some apple installer pushed aside (wiht the intent of installing a newer better one), which for some reason didn't install.
  • Reply 6 of 17
    mattismattis Posts: 17member
    here were my results...



    dyld: /usr/sbin/httpd Undefined symbols:

    _hfs_apple_module

    /usr/sbin/apachectl: line 175: 977 Trace/BPT trap $HTTPD

    /usr/sbin/apachectl start: httpd could not be started
  • Reply 7 of 17
    thuh freakthuh freak Posts: 2,664member
    i'm not very familiar with the apple hfs module, or what it does, but i know how (or i think i know how) to disable it. this next part is a little tricky. type "sudo emacs /etc/httpd/httpd.conf" (again if asked, type your password).



    an interactive full terminal window program, called 'emacs' will start up. its a pretty strong text editor, but its a little difficult for beginner's to grasp. hold down control, and tap 's'. then type 'hfs_apple' (without the quotes, but with the underscore), then enter. emacs should scroll to a line that looks like this:

    LoadModule hfs_apple_module libexec/httpd/mod_hfs_apple.so



    if not, try holding control and hitting 's' again. when you find it, make sure that the line looks very much like the above, not just "LoadModule" but with hfs_apple_module and libexec/httpd/mod_hfs_apple.so. Put a hash mark (#) before "LoadModule" (but make sure theres no leading space before the hash). now hold control, and hit 'x', hold control again, and hit 's'. (that save). now control-x, control-c (that quits emacs). now, try again to start apache (sudo apachectl start).



    edit: and again, i dont know what the apple module does or if disabling it will cause you to lose any features with apache. it won't hurt your computer, but it may affect your web site.
  • Reply 8 of 17
    mattismattis Posts: 17member
    Results...



    Syntax error on line 282 of /etc/httpd/httpd.conf:

    Cannot add module via name 'mod_hfs_apple.c': not in list of loaded modules

    /usr/sbin/apachectl start: httpd could not be started



    what next? by the way, thanks for all your help!
  • Reply 9 of 17
    thuh freakthuh freak Posts: 2,664member
    back into emacs (sudo emacs /etc/httpd/httpd.conf) and the search (control-s) for "mod_hfs_apple.c". then add a hash (#) to the front of that line too. then save (control-x control-s) and quit (control-x control-c).
  • Reply 10 of 17
    mattismattis Posts: 17member
    YES... it looks good!!!



    Processing config directory: /private/etc/httpd/users

    Processing config file: /private/etc/httpd/users/jerry.conf

    Processing config file: /private/etc/httpd/users/lolo.conf

    Processing config file: /private/etc/httpd/users/matt.conf

    Processing config file: /private/etc/httpd/users/mom.conf

    /usr/sbin/apachectl start: httpd started



    now i dont want to ruin this so what should i do now?
  • Reply 11 of 17
    thuh freakthuh freak Posts: 2,664member
    Quote:

    Originally posted by mattis

    YES... it looks good!!!

    .

    .

    .

    now i dont want to ruin this so what should i do now?




    wonderful . well, now apache starts (and has already started). in the future you shouldn't have to mess with terminal for this problem again. you can start/stop it from sysprefs. if you'd like a chance at it, go into sys prefs, stop Personal Web Sharing, then start it up again (you may have to quit/reopen sysprefs before attmepting that, to make sure that sys prefs realizes its been started somewhere; it shouldn't be necessary again).



    again, i'm not familiar with the hfs module, and i'm not sure what rammifications turning it off will have. you may notice that some pages won't display correctly, or other Personal Web Sharing weirdness. If it becomes a major concern, you can reinstall osx, or ask someone to send you this file: /usr/libexec/httpd/mod_hfs_apple.so, then move it into place, go back into terminal, and into emacs (sudo emacs /etc/httpd/httpd.conf), and uncomment (remove the hash marks) from the two lines we affected earlier. hopefully that won't be necessary.
  • Reply 12 of 17
    mattismattis Posts: 17member
    thanks for all your help!!
  • Reply 13 of 17
    thuh freakthuh freak Posts: 2,664member
    Quote:

    Originally posted by mattis

    thanks for all your help!!



    no problem. and look, we nearly doubled your post count .
  • Reply 14 of 17
    mattismattis Posts: 17member
    i guess i wasnt thinking last night... i figured that once i restarted the computer everything would be ok... but it still doesnt work!! sorry for getting our hopes up... if the file i need to jave sent to me will stilll help let me know... otherwise i can probably call apple care and see what they say..
  • Reply 15 of 17
    thuh freakthuh freak Posts: 2,664member
    well, what does apache (sudo apachectl start) say now?
  • Reply 16 of 17
    mattismattis Posts: 17member
    sorry, i must not have made my self clear... this is my problem-> when i go back into system prefs>sharing>services and try to turn on personal web sharing it says "web sharing starting up..." and stays like that. the apache his started already->



    Processing config file: /private/etc/httpd/users/jerry.conf

    Processing config file: /private/etc/httpd/users/lolo.conf

    Processing config file: /private/etc/httpd/users/matt.conf

    Processing config file: /private/etc/httpd/users/mom.conf

    /usr/sbin/apachectl start: httpd started



    is there any steps between this message and system prefs that i missed? or is there still a problem?
  • Reply 17 of 17
    thuh freakthuh freak Posts: 2,664member
    that's interesting. i guess you could try killing apache from the terminal, then try it in sysprefs again. to kill it: `sudo apachectl stop`. but, if you have it already started, then its not necessary to start it from the sysprefs; so you dont really have to kill it. try opening up a new web window, and type in http://localhost/. that should bring up an apche default page if it loads, or it'll timeout if the webserver doesn't work.
Sign In or Register to comment.