Creating a Local Server Configuration
A local server is a server that is running in a local or a mounted folder and whose document root is NOT the parent of the project root. You do your development, then copy the sources to the server.
To configure access to the server in this set-up, you need to specify the following:
The server configuration root folder and the URL address to access it.
Correspondence between the project root folder, the folder on the server to copy the data from the project root folder to, and the URL address to access the copied data on the server. This correspondence is called mapping.
Specify the name, type, and visibility of a server configuration
Open the Deployment page by doing one of the following:
In the Settings/Preferences dialog (Ctrl+Alt+S), select Deployment under Build, Execution, Deployment.
Chooseon the main menu.
In the left-hand pane that lists all the existing server configurations, click Add and select Local or mounted folder in the pop-up menu.
Click the Use as Default toolbar button to have PyCharm silently apply the current configuration in the following cases:
Use the Visible only for this project checkbox to configure the visibility of the server access configuration.
Select the checkbox to restrict the use of the configuration to the current project. Such configuration cannot be reused outside the current project. It does not appear in the list of available configurations in other projects.
The server records are stored in the .idea directory together with the project, which allows sharing them between team members through a VCS.
In the server access configurations list in the left-hand pane, the configurations visible only in the current project are marked with the icon.
When the checkbox is cleared, the configuration is visible in all PyCharm projects. Its settings, including SSH credentials for SFTP servers, can be reused across several projects.
Specify the server configuration root and the URL address to access it
Switch to the Mappings tab.
In the Folder field, specify the server configuration root.
The server configuration root is the highest folder in the file tree on the server that can be accessed through the server configuration. The easiest way is to use the document root of your Web server as defined in the Web server configuration file. However you can appoint any other existing folder under the document root.
In the Web server URL field, specify the URL address of the server configuration root. This URL address will be the starting point for building the URL address of your application. Depending on your choice of the server configuration root, do one of the following:
Type the URL address associated with the document root of your Web server as defined in the Web server configuration file.
Type the URL address in the format
<URL of the server document root>/<path to the relevant folder relative to the server document root>.
Both the HTTP and the HTTPS protocols are supported.
Map project folders to folders on the server and the URL addresses to access them
Configure mappings, that is, set correspondence between the project folders, the folders on the server to copy project files to, and the URL addresses to access the copied data on the server. The easiest way is to map the entire project root folder to a folder on the server. The project folder structure in this case will be repeated on the server, provided that you have selected the Create Empty directories checkbox in the Options dialog. For more details, see Configuring Synchronization with a Web Server and Customizing Upload/Download.
Switch to the Mappings tab.
In the Local Path field, specify the full path to the desired local folder. In the simplest case it is the project root.
In the Deployment Path field, specify the folder on the server where PyCharm will upload the data from the folder specified in the Local Path field. Type the path to the folder relative to the server configuration root.
If the folder with the specified name does not exist yet, PyCharm will create it, provided that you have selected the Create Empty directories checkbox in the Options dialog. For more details, see Customizing Upload/Download.
In the Web Path field, type the path to the folder on the server relative to the server configuration root. Actually, type the relative path you typed in the Deployment Path field.
Example of specifying a server configuration root
For example, the server's default document root is the htdocs folder, and the default URL address to access the data is
http://localhost. Let's suppose that you are using the XAMPP package and it is installed in the root of the C:/ drive.
If you decide to copy your project files directly under the server document root, your server configuration root will be C:\xampp\htdocs and its URL will be
You can establish a more complicated folder structure on the server, for example, to have
MySite2 folders under the server document root. In this case the you will have to decide which of these folders you will use in the current configuration, let it be
MySite2. Accordingly, the server configuration root will be C:\xampp\htdocs\MySite2 and its URL address will be
Example of mapping project folders with folders on the server
For example, if your project is located under C:\My_Projects\Mapping_project, the server document root is C:\xampp\htdocs, the server configuration root is C:\xampp\htdocs\MySite2, and its URL address is
http://localhost:<port>\MySite2, fill in the fields as follows:
In the Local Path field, type
In the Deployment Path field, type
In the Web Path field, type