Move Physical Path of TFS Web Access Website - iis

I want to move the physical path of TFS Web Access Website (TFS 2015 on Server 2012 R2 and IIS 8) from the default path
C:\Program Files\Microsoft Team Foundation Server 14.0\Application Tier\Web Services
to another partition and path. I couldn't find anything similar on MSDN.
Is this scenario supported? Has anyone ever done that?

In Short: The scenario is not supported.
To move the whole TFS application and websites, you'll need to re-install the application tier and select another root folder during installation. But it is possible that the presence of common libraries from the previous installation will force you to the system partition.
You should be able to change the Cache folder for TFS through the admin console though:

Related

How can I tell if I have IIS Express or Full version installed?

I have two machines: Windows 10 Pro, and Windows 10 Home. I have enabled IIS on both of them. From both machines, going to IIS -> File -> About shows this dialog:
One might assume that I'm dealing with the full version of IIS simply due to the lack of the word "Express".
Is there any simple way to confirm if a machine has full or express installed?
IIS Express is normally installed into your 32-bit Program Files folder. So, to see if it's there you can try:
C:\>cd "\Program Files (x86)\IIS Express"
C:\Program Files (x86)\IIS Express>iisexpress /?
Full IIS is normally installed as a service called "World Wide Web Publishing Service" or "w3svc" for short. So, to see if it's there you can try:
C:\>net start w3svc
You opened IIS Manager to see such a dialog and IIS Manager is only part of full IIS, while IIS is part of Windows.
If you want to check that in code, then there are other ways such as checking Windows CBS data, or reading registry key.
IIS Express is completely another software, which is an MSI package to be installed either with Visual Studio or individually. To test its installation, you either check the Programs dialogue as the comment said, or query MSI data or registry keys.
If you have IIS manager installed, you have full IIS.
IIS Express is part of Visual Studio and appears in the Windows system tray when you run a web application/web site from within Visual Studio.

Access the Web Server Extensions folder?

I am trying to import a SharePoint web part. A guide I am following to import it refers adding .dll files to a Web server Extensions folder in the Microsoft Shared folder. I don't have that folder. I assume I need a server-connected application for that folder to be created have IIS enabled. There is no indication that the computer I'm using ever had that folder. How is the Web Server Extensions folder created?
I have access to SharePoint and Project servers, but not those Server apps themselves. I have Project 2010 and SharePoint Designer installed. I do not have Windows Server.
**EDIT 7/21/14: **I do not have the web server extensions folder because I do not "have" the actual SharePoint server on my computer. So my question should be, how can I point to the web server extensions folder in the computer that does house the server?
**EDIT 8/5/14: **I can access the server via RDP and see the Web Server Extensions folder. Incidentally, I also have that folder on my computer, with subfolders 15 and 16, despite not running any servers on it. My questions now are:
1) What is the significance of the numbers?
2) How do I copy the extensions to the server's extensions folder if I am connected via RDP?
They are referring to the "web server extensions" folder. The folder is created when any version of SharePoint (foundation or enterprise) is installed. The folder is on your SharePoint server in %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\. Web parts will add files into `%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\FEATURES' directory (for SharePoint 2010). For more information:
http://msdn.microsoft.com/en-us/library/office/ms460318(v=office.14).aspx
EDIT:
Here is one way to view the contents of the folder:
Connect to your SharePoint server via Remote Desktop (RDP)
Click On The Start Menu then Computer to open Windows Explorer
Double click the drive SharePoint was installed on. Most commonly it's your C: drive. It may be labeled Local Disk (C:)
Click the following folders:
Program Files
Common Files
Microsoft Shared
web server extensions
Another way to view the contents of the folder would be to connect to the server via RDP, click Start - Run (or press WIN+R), type the following into the run dialog box, then press enter:
%ProgramFiles%\Common Files\Microsoft Shared\web server extensions
If you provide the steps in the guide you are following I may be able to provide more specific assistance.

Using Visual Studio 2013 for ASP.NET web site project

I am new to the Visual Studio 2013 IDE / Environment...
I have inherited an older (ASP.NET) web site that is currently being maintained using Microsoft Expression Web 4 (which is no longer supported by Microsoft). The test and production web sites are hosted remotely using IIS 7.5
I have two questions with regard to migrating from Expression Web 4 to Visual Studio 2013:
Is there any way to simply copy (FTP/download) the web site from the production server into Visual Studio 2013? i.e.: create a new empty web site in VS 2013 and then copy everything from the production web site. Will this retain “sub-web” folders, etc.? (I doubt it).
When using Expression Web 4 to publish pages to IIS – some of the files in Expression Web are marked as “Exclude from Publishing” (because some files like web.config differ depending if publishing to the test or production server). I have not found anything in VS 2013 for an ASP.NET web site project that allows me to set individual files so they are excluded from being copied to a remote web site. Does such functionality even exist?
Any insights would be appreciated.
Thanks in advance.
For #1 if you have Web Site project open in VS (not to be confused with Web Application project), you can right-click on it and choose Copy Web Site. This will bring up an window where you can connect to a remote site (e.g. with FTP) and sync files back and forth.
(Note: this feature is ancient and nobody knows about it anymore)
For #2, it depends. In the case of web.config, you can create a publish profile (right-click the project and choose Publish) that will let you use web.config transforms to modify the web.config file for each publish destination. Once your publish profile exists, you can right-click on it in Solution Explorer and choose Add Config Transform, which will only apply when you publish to that destination.
For other files you wish to exclude, you can modify the .pubxml file for your publish profile as described here using <ExcludeFilesFromDeployment> and <ExcludeFoldersFromDeployment>. (The blog post talks of editing the project file, but that's no longer necessary since VS2012; use the .pubxml files instead.)

IIS7.5 Debug vs Published permissions

I'm running Visual Studio 2010 and IIS 7.5
My site accesses a specified servers hardware for some statistical analysis.
When I debug my site in Visual Studio, I can access other servers hardware information with now issue. When I publish the site to IIS running as ASP.Net 4.0 appPool because the site is written under the 4.0 framework, the hardware retrieval fails. (note: when I run the site and analyze the local machine hardware, it works perfectly... the problem lies in analyzing another machine on the network.)
My question is, What is the difference in permissions a site is running under when debugging in Visual Studio in comparison to a published site in IIS 7.5?
Things I've tried...
Changing the app pool identity to every possible built in option, and my own domain profile, which is local admin on the machine I'm trying to retrieve hardware info about.
Changing the user that access the file directory of the website.
Changing app pools period. (The site has to run under .net 4.0, or else it barks out bad things).
I'm thinking I may need to install the site directly on the server that's being analyzed, but I find it odd that I can get all the data from other machine when I'm debugging. Any insight someone could bring would be greatly appreciated. Thanks!!
This answer is, in some cases, you have to add the appPool identity running the site to the "Performance Monitoring" group for the local machine in order to allow an ASP.NET site access the server's local hardware resources...

SharePoint Development in VM and Version Control With TFS

Our team is going to be developing against SharePoint using local VMs. Our VMs are not allowed to join the host domain. Additionally our host nics are prohibited from using Internet Connection Sharing. We have a requirement to source control all our development work using Team Foundation Server. Our TFS installation is using Kerebos for authentication.
To be able to use TFS for source control we were thinking we could share a folder between the host and VM, do our work on the VM, save to the shared folder and then do check ins and such from the host which will be able to authenticate against TFS.
I'm hoping there is a cleaner way to do this or someone with similar restrictions can provide some insight.
Note: I have successfully setup a similar mechanism using Tortoise SVN and Ankh SVN that works, but management will not budge on the TFS requirement. Not that I blame them either, the license is very expensive and they want to feel they are getting their money's worth. Therefore TFS has to be included in the answer.
Here's a solution that works perfectly for SharePoint 2007 development.
We run virtualised instances of Windows Server 2008 on our Windows XP machines at the project i'm on. We use Sun VirtualBox as the virtualisation software.
secondly, each VM is a standalone domain controller + sql server + reporting server + analysis server + sharepoint server and as such isn't joined to the main domain.
when opening up Visual Studio 2008 and connecting to TFS you don't need the machine/server to be connected to the domain as the VM NATs through the host machines network adapters - use a fully qualified address for your TFS and you shouldn't have any problems connecting to TFS from within the VM.
you may need to turn off integrated windows authentication (IE -> Tools -> Internet Options -> Advanced)...
We also run VS08 in the VM and not on the host..
Another thing is to use WSPBuilder to build your solutions and create the deployment scripts for you (or alternatively just set up an external tool/command from VS08 that runs the stsadm.exe -o deploysolution command)..you can deploy effortlessly to the VM and ensure that it runs fine - then just check in your code, set up build scripts that fires off WSPBuilder on the build server to build the solutions for you and deploy from there (or copy the WSP up to the server and run them there).
I think your solutions is as clean as it will get.. you could map a folder on your host machine and open the Visual Studio project straight from there within the VM. Saves copying. Committing will have to be from the host. Use of TFS features will be a bit awkward, you'll have to open VS on your host machine as well to connect commits to work items etc. Not exactly what the investment in TFS was for.
How come they've dished out the cash for TFS but are not willing to facilitate it? The VM's should really be in the domain.. or at least a trusted domain.
We run the same setup except we do have SVN and can commit directly from the VM. Workable :)
BTW, if you develop for SharePoint 2010 this gets better; it'll allow installation on non-server OS's so you can develop on your local machine (which I guess, is on the domain).
I generally use VS2008 running on the host with the SharePoint assemblies installed to the GAC of the host. I use build events/build targets with a shared folder and sysinternals to build directly to the SharePoint VM's bin/GAC folders. This way Visual Studio builds directly to the SharePoint server and you do not have to manage 2 installations (host and VM). I would also recommend installing VS2008 debugger as a service on the VM for easy debugging.
Hope this helps!

Resources