Я предполагаю, что вы создаете веб-приложение, потому что вы ссылаетесь на Apache и Node. Быстрый ответ - возможно ли это - ДА. Рекомендуется - НЕТ. Node объединяет свой собственный веб-сервер, и большинство веб-сайтов работают на порте 80. Я также предполагаю, что в настоящее время нет плагина Apache, который поддерживается Nodejs, и я не уверен, является ли создание виртуального хоста лучшим способом для реализации этого. На эти вопросы должны ответить разработчики, которые поддерживают Nodejs как хороших людей в Joyent.
Вместо портов было бы лучше оценить технический стек Node, который полностью отличается от большинства других, и именно поэтому я люблю его, но он также включает в себя несколько компромиссов, о которых вы должны знать заранее.
Ваш пример похож на CMS или веб-приложение для обмена, и существуют сотни готовых приложений, которые будут отлично работать на Apache. Даже если вам не нравится какое-либо готовое решение, вы можете написать веб-приложение на PHP / Java / Python или смешать и сопоставить его с парой готовых приложений, и все они разработаны и поддерживаются для работы за одним экземпляром Apache.
Пора остановиться и подумать о том, что я только что сказал.
Теперь вы готовы решить, какой стэк вы собираетесь использовать. Если на вашем веб-сайте никогда не будут использоваться какие-либо из тысяч готовых приложений, для которых требуется Apache, перейдите на Node, в противном случае вы должны сначала устранить предположения, которые я изложил ранее.
В конце концов, ваш выбор стека намного важнее, чем любой отдельный компонент.
Я полностью согласен с @Straseus в том, что относительно просто использовать API файловой системы node.js для обработки загрузок и загрузок, но подумайте о том, что вы хотите от своего веб-сайта в долгосрочной перспективе, а затем выберите свой технический стек.
Изучение структуры Node проще, чем изучение других структур, но это не панацея. Приложив немного больше усилий (что само по себе может быть полезным), вы также можете изучить любую другую среду. Мы все учимся друг у друга, и вы будете более продуктивными, если будете работать небольшой командой, чем если вы работаете в одиночку, и ваши технические навыки бэкэнда также будут развиваться быстрее. Поэтому не стоит сбрасывать со счетов навыки других членов вашей команды так дешево.
Этому посту около года, и есть вероятность, что вы уже решили, но я надеюсь, что моя напыщенная речь поможет следующему человеку, который принимает подобное решение.
Спасибо за чтение.