Этому будут нужны те же права как пользователь, это выполняет веб-сервер. Это будет варьироваться в зависимости от Вашей ОС. Это может быть "апачским" или "www-данные" или что-то еще полностью.
Если Вы не используете suEXEC, сценарий выполняется веб-сервером, и как таковой работает с теми же полномочиями как тот пользователь.
Так, для решения проблемы необходимо определить, под каким пользователем апачский процесс работает, и примените соответствующие полномочия к файлам/папкам, которые Вы хотите, чтобы сценарий смог изменить.
Можно указать, что Пользователь и Группа считают апачские выполнения под в conf файле с помощью
User=[username]
Group=[groupname]
директивы.
Взгляните в своем conf файле, снова название и местоположение файла будет меняться в зависимости от ОС. Предоставление немного большего количества специфических особенностей здесь может помочь с более прямым ответом.
править: для Centos conf файл расположен в
/etc/httpd/conf/httpd.conf
Предсказать крайне сложно. Я видел легкие приложения MVC с одним рабочим процессом, потребляющим от 12 до 1300 МБ памяти (да, 1,3 ГБ).
Как вы, вероятно, знаете, .NET CLR построена на основе двухэтапной модели компиляции, а это означает, что ваши предварительно скомпилированные сборки все равно необходимо преобразовать из MSIL (реализация Microsoft Common Intermediate Language) в машинный код. При первом обращении к приложению IIS все страницы анализируются и компилируются, а результаты кэшируются в памяти процесса.
Таким образом, ваш фактический результат может быть не таким «тяжелым», но процессу все равно необходимо выделить память для скомпилированных сборок и всех зависимых сборок, загружаемых из глобального кэша сборок.
Кроме того, это зависит от гораздо большего, чем просто само приложение. Существует большая разница в памяти, потребляемой приложением, когда у него есть очередь запросов, равная 10, по сравнению с 1000 попаданий (даже если у каждого запроса мало места в памяти).
Для меня ограничение в 100 МБ звучит довольно сдержанно
У вас и у платформы поставщика одинаковая разрядность? Я обнаружил, что при запуске приложения на x64 использование памяти увеличивается по сравнению с x86, а если объектов много, оно может удвоиться.