2010-04-21 3 views
7

Я запускаю приложение django поверх apache с помощью mod_wsgi, используя WAMP.Возможно ли, что WAMP запускает httpd.exe как пользователь [сам] вместо локальной системы?

Определенный URL-адрес позволяет мне передавать содержимое файлов изображений, пути которых хранятся в базе данных.

Файлы могут быть расположены независимо от того, на локальном компьютере или под сетевым диском (\\my\network\folder).

С сервером разработки (manage.py runningerver) у меня нет никаких проблем при чтении и потоковой передаче файлов.

С WAMP и файлами сетевого диска я получаю IOError: очевидно, потому что для экземпляра httpd нет разрешения на чтение на указанном диске.

В менеджере задач я вижу, что httpd.exe управляется SYSTEM. Я хотел бы сказать WAMP, чтобы запустить сервер как [я], поскольку у меня есть права на чтение и запись в общей папке. (в конечном счете, производственный сервер должен запускаться пользователем «www-admin», имеющим разрешения).

Отображение общей папки сети на букву диска (например, Z) не разрешает это вообще.

Директивы User/Group в httpd.conf, похоже, не влияют на поведение Apache.

Я также regedited: Я пытался дублировать ключ реестра HKLM\[...]\wampapache под HK_CURRENT_USER\ и переименовать оригинальный ключ, но затем новый ключ, кажется, не будет найден, когда я CMD этот

> httpd.exe -n wampapache -k start 

или когда Я запускаю WAMP.

Я бежал из идей :)

ли кто-нибудь когда-нибудь была такая же проблема?

ответ

14

Win + R, услуги.msc

Редактирование wampapache и wampmysqld для входа в систему как пользователь.

значок лотка удобный передний конец «чистый старт wampapache» и «чистый старт wampmysqld»

+0

Отлично, это работает. Действительно, значок в трее - это просто удобный ярлык, но я рад, что смогу использовать его снова. –

+0

По моему опыту, вы должны явно указать, какой пользователь использовать, а не «Локальная системная учетная запись» http://i.imgur.com/gHKCM6L.png Я думаю, что «Локальная системная учетная запись» будет администратором, поскольку панель управления началось как администратор. Только для тех, кто наткнулся на это. – Znarkus

1

Директивы User/Group в httpd.conf, похоже, не оказывают какого-либо влияния на поведение Apache.

httpd.exe запускается пользователем root (вероятно, именно поэтому вы видите, что он работает под управлением SYSTEM). Строки user и group в httpd.conf определяют, какой пользователь будет обрабатывать дочерний процесс (это httpd spawns). Эти вилки - это то, что фактически обрабатывает запросы страниц и т. Д., Поэтому возможно, что ваша конфигурация уже делает то, что вы хотите, просто неясно, глядя на диспетчер задач.

Вы также можете попробовать использовать runas, чтобы запустить WAMP/Apache, хотя ваш пробег может отличаться.

+0

ОК, то, возможно, это синтаксис вещь? Мой логин - это вход в домен Windows, любая идея о том, как сформулировать это в httpd.conf? –

+1

Я никогда не пробовал это в Windows, но есть инструкции по адресу http://httpd.apache.org/docs/2.0/platform/windows.html#winsvc. Я думаю, что часть, которую вы, вероятно, интересуете, начинается с «По умолчанию все службы Apache зарегистрированы для запуска в качестве системы» –

+0

Я постараюсь проверить и понять, с чем вы связаны Спасибо :) –

0

Я только что нашел, что выполнение httpd.exe для меня работает ... Я просто потерял весь фанк значок WAMP tray и пункт меню «restart apache», действительно удобный, когда я обновляю код приложения. .

я должен делать с этим на данный момент ...