5

У меня есть проект MVC4, который развернут в Azure. Комбинация и минимизация работают абсолютно нормально.Как публиковать только вложенные/мини-скрипты

Всех файлы сценарии находятся в папке/JS, которые сгруппированные в/скриптах/JS

Когда я публикую в Azure с использованием MSDeploy, я хотел бы только в комплекте/уменьшенные файлы сценарии для развертывания. Я не хочу, чтобы кто-либо получал доступ к моим неминифицированным скриптам, угадывая URL-адрес.

Я понимаю, что сборка MVC происходит во время выполнения, поэтому для создания пакетов на лету потребуются разделенные файлы. Возможно, это должно быть автоматизировано с чем-то вроде хрюкать?

Хотите знать, какую стратегию развертывания используют люди в таких случаях, когда вы не хотите публиковать разделенные js.

+0

Что вы сделали, чтобы решить эту проблему? У меня есть аналогичный случай и вы хотите прекратить подавать файлы с их URL-адресом, вы в конечном итоге используете хрюканье или есть другой способ? – Bhavin

+0

dint получите решение как таковое. Использование хрюка или даже переплетение веб-узлов - это способ пойти, я думаю. – Yashvit

ответ

0

с помощью Web Deploy вы можете установить параметр пропуска:

http://technet.microsoft.com/en-us/library/dd569089%28WS.10%29.aspx

вот пример:

http://blog.richardszalay.com/2012/12/18/demystifying-msdeploy-skip-rules/

+0

, но как я сначала минимизирую все файлы? – Yashvit

+0

просто переключитесь в режим выпуска и создайте свой проект, или вы можете создать определение сборки и использовать непрерывную интеграцию для публикации своего сайта. –

+0

http://www.visualstudio.com/en-us/get-started/deploy-to-azure-vs –

0

Они получают свои сценарии на PageLoad, так что я не понимаю, почему они видят неразрешенную версию, которая должна быть большой проблемой, если, может быть, у вас есть сумасшедшие или оскорбительные комментарии в вашей неограниченной версии. Пользователи могут использовать форматировщик javascript, как обсуждалось in this SO post, чтобы вернуть миниатюрные файлы в читаемый формат.

Хотя для ваших проблем вы можете просто отбросить файл web.config в развернутой папке /js, чтобы что-то не обслуживалось. В моем тестировании это не повлияло на минимизацию. Хотя, если вы поместите его в локальной папке, вы будете иметь ошибки пакетирования в режиме отладки (поскольку режим отладки подают отдельные файлы и это web.config держит что-либо из обслуживаемых):

<?xml version="1.0"?> 
<configuration> 
    <system.web> 
     <authorization> 
      <deny users="*" /> 
     </authorization> 
    </system.web> 
</configuration> 

Другой проблемой является , в зависимости от того, насколько параноик у вас есть у кого-то, кто видит неограниченный скрипт, вам, возможно, придется написать свой собственный класс BundleBuilder по причинам, указанным в How to prevent User-Agent: Eureka/1 to return source code, в котором показано, как пользователи могут видеть неуниченные пакеты с комментариями, изменяя их пользовательский агент.