8
votes

Est-il possible d'exécuter WAMP HTTPD.EXE comme utilisateur [moi-même] au lieu d'un système local?

i Exécutez une application Django sur Apache avec mod_wsgi , à l'aide de wamp.

Une URL donnée me permet de diffuser le contenu des fichiers image, dont les chemins sont stockés dans la base de données.

Les fichiers peuvent être situés si sur la machine locale ou sous le lecteur réseau ( \\ mon \ Network \ dossier ).

avec le serveur de développement (gérer.pypy RunServer), je n'ai aucun problème à la lecture et en streaming les fichiers.

avec wamp, et avec des fichiers de lecteur réseau, je reçois un ioerror : évidemment parce que l'instance HTTPD ne fait pas avoir lu la permission sur ledit lecteur.

dans le gestionnaire de tâches, je vois que httpd.exe est exécuté par système . Je voudrais dire à WAMP d'exécuter le serveur comme [moi] car j'ai lu et écrire des autorisations sur le dossier partagé. (Finalement, le serveur de production doit être exécuté par un utilisateur 'www-admin' ayant les autorisations)

mappage du dossier partagé réseau sur une lettre de lecteur (Z: par exemple) ne résoud pas cela du tout.

Les directives utilisateur / groupe dans httpd.conf ne semblent avoir aucune sorte d'influence sur le comportement de Apache.

J'ai aussi été régiité: i essayé de dupliquer le hklm \ [...] \ wampapache clé de registre sous hk_current_user \ et renommer la clé d'origine, mais la nouvelle touche ne semble pas être trouvée quand I cmd this xxx

ou quand je cours wamp.

Je suis à court d'idées :)

Quelqu'un a-t-il jamais eu le même problème?


0 commentaires

3 Réponses :


1
votes

Les directives utilisateur / groupe dans httpd.conf ne semblent avoir aucune sorte d'influence sur le comportement de Apache.

httpd.exe est démarré par l'utilisateur root (c'est probablement pourquoi vous le voyez exécuter sous Système). Le utilisateur et GROUPE Les lignes de httpd.conf déterminent quel utilisateur le processus de traitement de l'enfant (que httpd Spawns) fonctionnera sous. Ces fourches sont ce qui gérait réellement les demandes de page, etc. Il est donc possible que votre configuration soit déjà en train de faire ce que vous voulez, il n'est pas clair de regarder le gestionnaire de tâches.

Vous pouvez également essayer d'utiliser Runas pour démarrer Wamp / Apache, bien que votre kilométrage puisse varier.


2 commentaires

Ok, alors peut-être que c'est une syntaxe? Mon identifiant est un identifiant de domaine Windows, une idée de la manière de la formuler dans httpd.conf?


Je n'ai jamais essayé sous Windows, mais il y a quelques instructions à httpd .apache.org / Docs / 2.0 / Platform / Windows.html # Winsvc . Je pense que la pièce dont vous êtes probablement intéressé par Démarre "par défaut, tous les services Apache sont enregistrés pour exécuter comme système"



0
votes

Je viens de trouver que l'exécution de httpd.exe me fait fonctionner pour moi ... Je perds simplement toute l'icône Funky Wamp Tray, ainsi que le menu "Redémarrer Apache", très pratique chaque fois que je mettant à jour mon code d'application ...

Je vais devoir faire avec ceci pour le moment ...


0 commentaires

19
votes

win + r, services.msc

Modifier Wampapache et WampMySQLD pour vous connecter en tant qu'utilisateur.

L'icône du bac est une extrémité frontale pratique du "Net Démarrer le wampapache" et "Net Démarrage de Wammysqld"


3 commentaires

Parfait, ça marche. En effet, l'icône du plateau n'est qu'un raccourci pratique, mais je suis content de pouvoir l'utiliser à nouveau.


Dans mon expérience, vous devez explicitement le dire à quel utilisateur utiliser l'utilisateur, non "Compte système local" i.Imgur .com / ghkcm6l.png Je pense que le "compte système local" sera administrateur car le panneau de commande est démarré comme administrateur. Juste pour quelqu'un d'autre qui trébuche à ce sujet.


Merci beaucoup!!!!! J'ai eu un problème similaire où les commandes fonctionneraient via la ligne de commande, mais pas lorsqu'elles sont exécutées avec PHP, elle était due aux services WAMP commençant par des autorisations incorrectes.