codecamp

IntelliJ IDEA:内置Web服务器

内置Web服务器

此功能仅在Ultimate版本中受支持。

以下内容仅在安装并启用PHP插件时有效!

IntelliJ IDEA有一个内置的Web服务器,可用于预览和调试您的应用程序。此服务器始终在运行,不需要任何手动配置。根据项目结构,所有项目文件都在内置服务器上提供,其根URL为http://localhost:<built-in server port>/<project root>。

内置服务器只能提供HTML,JavaScript和CSS等静态内容。要将它与PHP文件一起使用,您需要为项目指定本地PHP解释器。配置解释器后,IntelliJ IDEA将自动启动PHP内置Web服务器,并在运行PHP应用程序后立即将所有PHP请求重定向到它。要运行PHP应用程序,请在浏览器中打开文件或创建专用的运行/调试配置并启动它。

IntelliJ IDEA 11.1及更高版本支持与内置Web服务器的集成。

配置内置Web服务器

如有必要,您可以自定义内置Web服务器的参数。通过按Ctrl+Alt+S或选择:文件|设置(对于Windows和Linux)或 IntelliJ IDEA|首选项(对于macOS)来打开“设置/首选项对话框” ,然后单击Build,Execution,Deployment下的Debugger。 

项目

描述

端口

使用此旋转框指定运行内置Web服务器的端口。默认情况下,此端口设置为端口63342,IntelliJ IDEA通过该端口接受来自服务的连接。您可以将端口号设置为以1024及更高版本开头的任何其他值。

可以接受外部连接

如果选中此复选框,则可以从另一台计算机访问在指定端口上运行的内置服务器上的文件。
如果清除此复选框(默认情况下),则调试器仅侦听本地连接。

允许未签名的请求

出于安全原因,默认情况下拒绝从IntelliJ IDEA外部对内置服务器上的页面的任何请求,并显示以下授权弹出窗口:
debugger_allow_unsigned_requests.png
要访问请求的页面,请单击“ 将授权URL复制到剪贴板”,然后将生成的标记粘贴到浏览器的地址栏中。

但是,这种行为可能很烦人,例如,如果无法进行手动干预,它可能会阻止您的调试会话。要禁止显示授权弹出窗口,请选中“ 允许未签名的请求”复选框。

在浏览器中打开文件

执行以下操作之一:

  • 在主菜单上选择:查看|在浏览器中打开,或按Alt+F2。然后从弹出菜单中选择所需的浏览器。
  • 将鼠标指针悬停在代码上以显示浏览器图标栏:  browserIcons 单击指示所需浏览器的图标。

请注意,如果为此项目定义了部署服务器并将其标记为默认,则将从此服务器提供该文件。如有必要,您仍然可以通过IntelliJ IDEA内置Web服务器打开页面。为此,请打开所需的浏览器,并使用http://localhost:<built-in server port>/<project root>作为根URL,键入与项目结构相关的文件的URL。

IntelliJ IDEA:单独安装组件
IntelliJ IDEA:配置远程PHP解释器
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

IntelliJ IDEA的一般准则

什么是IntelliJ IDEA项目

使用IntelliJ IDEA的意图行为

IntelliJ IDEA使用运行/调试配置

特定于VCS的程序

IntelliJ IDEA语言和特定框架指南

IntelliJ IDEA的数据库和SQL功能

IntelliJ IDEA使用之JavaServer Faces(JSF)

IntelliJ IDEA:分析PHP应用程序的性能

IntelliJ IDEA:调试PHP应用程序

IntelliJ IDEA:适用于PHP的Google App Engine

IntelliJ IDEA更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }