ob娱乐下载Symfony本地Web服务器
编辑该页面ob娱乐下载Symfony本地Web服务器
您可以运行Symfonyob娱乐下载应用程序与任何web服务器(Apache, nginx,内部PHP web服务器,等等)。然而,Symfonob娱乐下载y提供了自己的web服务器,以提高您的工作效率而开发应用程序。
虽然这个服务器不是用于生产使用,它支持HTTP / 2, TLS / SSL,自动生成安全证书,当地的领域,以及许多其他功能,迟早你需要在开发web项目。此外,服务器不与Symfony,您还可以使用它与任何PHP应用程序,甚至ob娱乐下载与HTML或单页应用程序。
安装
Symfob娱乐下载ony服务器的一部分ob娱乐下载
二进制文件时创建obb体育
和支持Linux, macOS和窗户。
请注意
您可以查看和有助于Symfony CLI的来源ob娱乐下载ob娱乐下载symfony-cli / symfony-cli GitHub库。
开始
Symfob娱乐下载ony服务器每个项目一旦开始,你可能最终与几个实例(他们每个人听不同的端口)。这是通用工作流服务一个Symfony项目:ob娱乐下载
1 2 3 4 5 6 7 8
美元cd我的项目/美元ob娱乐下载symfony服务器:启动[好]http://127.0.0.1 Web服务器监听:....……#现在,浏览给定的URL,或者运行这个命令:美元ob娱乐下载symfony开放:当地的
这种方式运行的服务器让它显示在控制台的日志消息,所以你无法同时运行其他命令。如果你愿意,你可以在后台运行Symfony服务器:ob娱乐下载
1 2 3 4 5 6 7 8 9
美元cd我的项目/#在后台启动服务器美元ob娱乐下载symfony服务器:开始- d#继续工作和运行其他命令……#显示最新的日志消息美元ob娱乐下载symfony服务器:日志
提示
在macOS,当启动Symfony服务器要求您可能会看到ob娱乐下载一个警告对话框“你想让应用程序接受传入的网络连接吗?”。这当运行未签名的应用程序防火墙中没有列出清单。解决办法是运行这个命令,Symfony二进制迹象:ob娱乐下载
1 2 3 4 5
#发现安装Symfony的二进制版本ob娱乐下载美元ob娱乐下载symfony的版本#改变路径的位置Symfony二进制和替换{version}ob娱乐下载美元sudo合作设计——力深——标志/ opt /自制程序/地窖symfony-cli / {version} / binob娱乐下载 / symfony
使PHP-FPM
请注意
PHP-FPM必须安装Symfony的本地服务器来使用。ob娱乐下载
当服务器启动时,它检查web / index_dev.php
,web / index . php
,公共/ app_dev.php
,公共/ app.php
这个顺序。如果找到一个,服务器将自动开始PHP-FPM启用。否则,服务器将开始没有PHP-FPM和将显示页面没有找到
当试图访问一个页面. php
文件浏览器。
提示
当一个index . html
和一个前端控制器,如如。index . php
都是现在的服务器仍将开始启用了PHP-FPM但index . html
将优先于前端控制器。这意味着当一个index . html
文件存在于公共
或网络
,它将会显示,而不是index . php
这将显示如Symfony应用程序。ob娱乐下载
支持TLS
浏览本地应用程序的安全版本是重要的早期检测混合内容的问题,和运行库,只有运行在HTTPS。传统上这是痛苦的和复杂的设置,但Symfony服务器自动化一切。ob娱乐下载首先,运行这个命令:
1
美元ob娱乐下载symfony服务器:ca:安装
这个命令创建一个本地证书颁发机构,注册在你的系统信任存储区中,寄存器在Firefox(这是只需要浏览器)并创建一个默认证书本地主机
和127.0.0.1
。换句话说,它为你做的一切。
之前浏览你的本地应用程序使用HTTPS而不是HTTP,重启服务器停止和启动一遍。
不同的PHP设置每个项目
选择一个不同的PHP版本
如果你有多个PHP版本安装在你的电脑上,你可以告诉Symfony哪一个使用创建一个文件ob娱乐下载.php-version
在项目根目录:
1 2 3 4 5 6 7
美元cd我的项目/#使用特定的PHP版本美元回声7.4 > .php-version#使用任何PHP 8。x版本可用美元回声8 > .php-version
提示
Symfob娱乐下载ony服务器根目录遍历目录结构,那么您可以创建一个.php-version
文件在某些父目录设置相同的PHP版本的一组项目目录。
运行下面的命令,如果你不记得所有的PHP版本安装在你的电脑:
1 2 3 4 5
美元ob娱乐下载当地的php:列表#你会看到所有支持的sapi (CGI、FastCGI等)为每一个版本。# FastCGI (php-fpm)在可能的情况下使用;然后CGI(充当FastCGI#服务器),最后,服务器落回到简单的CGI。
每个项目覆盖PHP配置选项
你可以改变任何PHP运行时配置选项的值每项目通过创建一个文件php . ini
在项目根目录。只添加选项你想覆盖:
1 2 3 4 5 6
美元cd我的项目/#这个项目只覆盖默认的PHP时区美元猫的php。ini[日期]日期。时区=亚洲/东京
与不同的PHP版本运行命令
当运行不同的PHP版本中,使用的主要是有用的ob娱乐下载
命令的包装器php
命令。这允许您总是选择最合适的PHP版本根据项目运行的命令。它也自动加载env增值,这是重要的non-Symfony命令运行时:ob娱乐下载
1 2 3 4 5 6
#用默认的PHP版本运行该命令美元php - r“…”#运行命令与项目选择的PHP版本#(或默认的PHP版本如果项目没有选择一个)美元ob娱乐下载symfony php - r“…”
本地域名
默认情况下,项目的一些随机端口访问127.0.0.1
当地的IP。然而,有时最好把域名:
- 更方便当你连续工作在相同的项目,因为端口号可以改变但域不;
- 一些应用程序的行为取决于他们的域或子域;
- 有稳定的端点,比如当地OAuth2重定向URL。
建立当地的代理
当地域可能由于当地Symfony提供的代理服务器。ob娱乐下载如果这是您第一次运行代理,您必须配置如下:
打开代理设置你的操作系统:
- 设置以下URL的值自动代理配置:
http://127.0.0.1:7080 proxy.pac
现在运行这个命令启动代理:
1
美元ob娱乐下载symfony代理:开始
如果代理不能工作在以下部分解释,检查这些:
- 一些浏览器(例如Chrome)需要重新应用代理设置(点击
重新应用设置
按钮chrome: / / net-internals / #代理
页)或者一个完整的重新启动后启动代理。否则,你会看到一个“这网页不可用”错误(ERR_NAME_NOT_RESOLVED
); - 有些操作系统(如macOS)不适用默认情况下,代理设置本地主机和域。你可能需要删除
*。local
和/或其他IP地址的列表。
定义本地的域
默认情况下,Symfonob娱乐下载y提出.wip
(进行中的工作)为本地域名。您可以定义一个本地域名为您的项目如下:
1 2
美元cd我的项目/美元ob娱乐下载symfony代理:域:附上我的域
如果你已经安装了当地代理解释说在前面的小节中,您现在可以浏览https://my-domain.wip
访问您的本地项目与新定制的域。
提示
浏览http://127.0.0.1:7080URL获取本地项目目录的完整列表,他们自定义的域,端口号。
您还可以添加一个通配符域:
1
美元ob娱乐下载symfony代理:域:附加“* .my-domain”
所以它将匹配所有子域https://admin.my-domain.wip
,https://other.my-domain.wip
…
当运行控制台命令,添加https_proxy
env var定制领域的工作:
1 2 3 4 5 6 7 8
#例子与旋度美元https_proxy = ob娱乐下载$ (symfony代理:url) curl https://my-domain.wip#黑焰和旋度美元https_proxy = ob娱乐下载$ (symfony代理:url)黑焰curl https://my-domain.wip#例子与柏树美元https_proxy = ob娱乐下载$ (symfony代理:url)。/ node_modules / bin /柏树开放
请注意
尽管env var中定义的名字总是大写,https_proxy
env var是区别对待比其他env var和它的名字必须在小写字母拼写。
提示
如果你喜欢使用不同的TLD,编辑~ /ob娱乐下载 .symfony5 / proxy.json
文件(~
意味着你的用户目录的路径),改变的价值tld
选择从在制品数量
任何其他TLD。
长时间运行的命令
长时间运行的命令,如编译前端的web资产,阻止终端,你不能同时运行其他命令。Symfob娱乐下载ony服务器提供了一个运行
命令包装如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#编译Webpack资产使用Symfony安可……ob娱乐下载但这样做的#背景不块终端美元ob娱乐下载symfony运行- d纱安可dev -手表#继续工作和运行其他命令……#不时,检查命令日志如果你想要的美元ob娱乐下载symfony服务器:日志#你也可以检查是否仍在运行的命令美元ob娱乐下载symfony服务器:Web服务器监听状态……命令“纱……”使用PID……#停止web服务器(和所有相关的命令),当你完成美元ob娱乐下载symfony服务器:停止
配置文件
谨慎
这个特性实验和随时可能改变或被删除,恕不另行通知。
有几个选项可以设置使用.ob娱乐下载symfony.local.yaml
配置文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
# domain1集。在制品数量和domain2.wipfor the current project代理:域:- - - - - -domain1- - - - - -domain2http:document_root:公共/#项目文档根路径passthru:index . php#项目passthru指数端口:8000年#力将用于运行服务器的端口preferred_port:8001年#首选HTTP端口(默认:8000)p12:路径/ / p12_cert#文件名包含TLS p12格式的证书使用allow_http:真正的#防止auto-redirection HTTP, HTTPSno_tls:真正的#使用HTTP,而不是HTTPS守护进程:真正的#服务器在后台运行use_gzip:真正的#切换GZIP压缩
谨慎
在这个配置文件中设置域将会覆盖任何领域设置使用代理:域:附加
命令启动服务器时当前项目。
配置人员
如果你喜欢一些流程自动启动,随着网络服务器(ob娱乐下载symfony服务器:启动
),您可以设置它们在YAML配置文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
# .ob娱乐下载symfony.local.yaml工人:#内置命令构建和手表前端的资产# yarn_encore_watch:# cmd:(“纱线”,“安可”,“开发”,——看的)yarn_encore_watch:~#内置命令开始信使消费者# messenger_consume_async:# cmd:(“sob娱乐下载ymfony”、“控制台”,“信使:消费”,“异步”)#看:(“配置”、“src”、“模板”,“供应商”)messenger_consume_async:~#您还可以添加自己的自定义命令build_spa:cmd:(“纱线”,”——“慢性消耗性疾病,“。/水疗中心”,“开发”]
码头工人集成
当地的Symfonyob娱乐下载服务器提供完整码头工人集成项目,使用它。更多地了解码头工人& Symfony,明白了ob娱乐下载使用Symfony的码头工人ob娱乐下载。
当web服务器检测到码头工人组成项目的运行,它会自动暴露了一些环境变量。
通过docker-compose
API,它查找暴露端口用于公共服务。当它检测到一个它知道,它使用服务名称暴露环境变量。
考虑如下配置:
1 2 3 4
# docker-compose.yaml服务:数据库:港口:[3306]
web服务器检测到一个服务暴露端口3306年
正在运行的项目。它知道这是一个MySQL服务并创建相应的环境变量与服务名称(数据库
)作为前缀:DATABASE_URL
,DATABASE_HOST
,……
如果服务不支持列表下面,一般设置环境变量:港口
,知识产权
,主机
。
如果docker-compose.yaml
名字不匹配Symfony的约定,添加一ob娱乐下载个标签覆盖环境变量前缀:
1 2 3 4 5 6
# docker-compose.yaml服务:db:港口:[3306]标签:com.ob娱乐下载symfony.server.service-prefix:“数据库”
在这个例子中,服务命名db
,所以环境变量将前缀DB_
,但随着com.ob娱乐下载symfony.server.service-prefix
被设置为数据库
首先,web服务器创建环境变量DATABASE_
而不是像预期的那样由默认Symfony的配置。ob娱乐下载
这是与他们的港口和支持的服务列表默认Symfony前缀:ob娱乐下载
服务 | 港口 | ob娱乐下载Symfony默认前缀 |
---|---|---|
MySQL | 3306年 | DATABASE_ |
PostgreSQL | 5432年 | DATABASE_ |
复述, | 6379年 | REDIS_ |
Memcached | 11211年 | MEMCACHED_ |
RabbitMQ | 5672年 | RABBITMQ_ (设置用户和通过码头工人RABBITMQ_DEFAULT_USER 和RABBITMQ_DEFAULT_PASS env var) |
Elasticsearch | 9200年 | ELASTICSEARCH_ |
MongoDB | 27017年 | MONGODB_ 通过一个码头工人(设置数据库MONGO_DATABASE env var) |
卡夫卡 | 9092年 | KAFKA_ |
MailCatcher | 1025/1080或25/80 | MAILER_ |
黑焰 | 8707年 | BLACKFIRE_ |
美居酒店 | 80年 | 总是暴露MERCURE_PUBLIC_URL 和MERCURE_URL (仅适用于dunglas /美居酒店 码头工人形象) |
您可以打开网络管理接口暴露的服务:
1 2
美元ob娱乐下载symfony开放:当地的:邮箱$ symfonob娱乐下载y开放:当地的:rabbitmq
或者点击“服务器”部分中的链接网络的调试工具栏。
提示
调试和列出所有导出环境变量,运行ob娱乐下载symfony var:出口——调试
。
提示
对于一些服务,web服务器也暴露环境变量理解CLI工具相关的服务。例如,跑步ob娱乐下载symfony psql运行
将自动连接到PostgreSQL服务器运行在一个容器,而不必指定用户名,密码,或数据库名称。
当码头工人服务正在运行,浏览页面的Symfony应用程序并检查web调试工具栏中的“Symfony服务器”部分;ob娱乐下载你会发现“码头工人构”是“上”。
请注意
如果你不想暴露为服务,环境变量设置com.ob娱乐下载symfony.server.service-ignore
标签真正的
:
1 2 3 4 5 6
# docker-compose.yaml服务:db:港口:[3306]标签:com.ob娱乐下载symfony.server.service-ignore:真正的
如果你的码头工人组成文件不是在项目的根,使用COMPOSE_FILE
和COMPOSE_PROJECT_NAME
环境变量来定义它的位置一样docker-compose
:
1 2 3 4 5
#开始你的容器:COMPOSE_FILE =码头工人/ docker-compose。yaml COMPOSE_PROJECT_NAME = project_name docker-compose - d#运行任何Symfoob娱乐下载ny CLI命令:COMPOSE_FILE =码头工人/ docker-compose。yaml COMPOSE_PROJECT_NAME = project_namob娱乐下载e symfony var:出口
请注意
如果你有多个码头工人编写文件,您可以提供隔开:
的解释码头工人组成CLI env var参考。
谨慎
当使用Symfony的二进制ob娱乐下载php bin /控制台
(ob娱乐下载symfony控制台……
),二进制总是使用环境变量检测通过码头工人和当地环境变量将忽略。例如,如果你建立了一个不同的数据库名称.env.test
文件(DATABASE_URL = mysql: / / db_user: db_password@127.0.0.1:3306 /测试
)如果你运行ob娱乐下载symfony控制台学说:数据库:下降-力- env =测试
,命令将会下降码头工人配置中定义的数据库,而不是“测试”。
谨慎
类似于其他web服务器,这个工具自动公开所有环境变量可以在CLI上下文。确保这个本地服务器无法访问本地网络上未经同意,以避免安全问题。
Platform.shIntegration
当地Symfony服ob娱乐下载务器提供完整,但可选的集成Platform.sh,服务优化运行Symfony应用程序在云上。ob娱乐下载ob直播app它提供特性,比如创造环境,备份/快照,甚至访问生产数据的一个副本从你本地机器来帮助调试任何问题。