PHP官网下载 https://windows.php.net/download/

在PHP官网点击Download下载时不管选择哪个版本的都有两个类型 :

Non Thread Safe(非线程安全)和  Thread Safe (线程安全)

如果需要配合 Apache 使用,需要下载 Thread Safe 版本(才包含php7apache2_4.dll模块)。

apache24+php8配置

将 php8 目录中的 php.ini-development 改名为 php.ini,然后打开这个文件找到 extension_dir=“ext”,去掉注释分号,改为extension_dir = “D:/software/php8/ext” (php的安装路径/ext)

打开 apache 目录中的 config/httpd.conf,在 LoadModule 后面追加(将php加到apache中):

#载入PHP处理模块
LoadModule php_module "D:/workspace/php8/php8apache2_4.dll" #php安装路径
PHPIniDir "D:/workspace/php8"
#所有的*.php文件使用php处理
AddType application/x-httpd-php .php .phtml

添加虚拟目录:  先注释掉原来的路径:DocumentRoot "${SRVROOT}/htdocs",在 httpd.conf 文件后面加上:

<IfModule dir_module>
DirectoryIndex index.php index.html index.htm default.php default.html default.htm home.php home.html home.htm
#G:/workspace/yii2-basic/web 放php项目的地方,取一个别名 testuri
Alias /testuri "G:/workspace/yii2-basic/web"
DocumentRoot "G:/workspace/yii2-basic/web"
<Directory "G:/workspace/yii2-basic/web">
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
</IfModule>

配置虚拟主机(配置多个服务的地方): 打开:conf/extra/httpd-vhosts.conf,在文件后面添加

<VirtualHost *:80>
#和前面的 DocumentRoot 一致
DocumentRoot "G:/workspace/PhoneShop/nginx/yii2-basic/web"
#虚拟主机名 访问时的网址
ServerName www.testuri.com
ErrorLog "logs/www.testuri.com-error.log"
CustomLog "logs/www.testuri.com-access.log" common
</VirtualHost>

修改本地网址IP解析指向(访问www.testuri.com时,IP为本地),打开 C:\Windows\System32\drivers\etc\hosts 文件,在后面添加:

127.0.0.1 www.testuri.com

在 web 目录新建一个 test.php(hello world),启动 apache 输入网址访问测试。

YII2部分

1. 开启 apache 的 mod_rewrite 模块

去掉 LoadModule rewrite_module modules/mod_rewrite.so前的“#”符号;

2. 修改 apache 的 AllowOverride

把 AllowOverride None 修改为 AllowOverride All;

3. 在与index.php文件同级目录(yii2 web目录)下添加文件“.htaccess”

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on # if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d # otherwise forward it to index.php
RewriteRule . index.php

4. 配置应用的urlManager

需要在config/web.php中的 components 数组下增加:

'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
]
],

PHP 网页 apache24+php8 yii basic的更多相关文章

  1. Yii basic 模板支持连接多数据库

    1.首先修改db配置文件,修改格式如下: return [ 'db' => [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:hos ...

  2. 基于Python的网页文档处理脚本实现

    嵌入式web服务器不同于传统服务器,web需要转换成数组格式保存在flash中,才方便lwip网络接口的调用,最近因为业务需求,需要频繁修改网页,每次的压缩和转换就是个很繁琐的过程,因此我就有了利用所 ...

  3. Java微信公众平台开发之OAuth2.0网页授权

    根据官方文档点击查看在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的"开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息"的配置选项中,修 ...

  4. windows本地配置php(yii)+nginx+fastcgi

    一. 配置nginx支持php 官网下载nginx. nginx.conf配置做如下更改: # yii框架 server { charset utf-8; client_max_body_size 1 ...

  5. xampp+YII搭建网站

    一.安装xampp xampp专为php开发设计,需要的apache,mysql,php已经自带了.特别提醒,请下载PHP版本高于5.4支持Yii2.0的xampp 二.配置环境变量 在系统的环境变量 ...

  6. Yii 2.x 和1.x区别以及yii2.0安装

    知乎上有个类似的问题:http://www.zhihu.com/question/22924271/answer/23085751 大致思路不会变,开发流程变化也不是很大.有变化的是1.yii2带入的 ...

  7. 参考sectools,每个人至少查找5种安全工具、库等信息并深入研究至少两种并写出使用教程

    1.Nessus Nessus是免费网络漏洞扫描器,它可以运行于几乎所有的UNIX平台之上.它不仅能永久升级,还免费提供多达11000种插件(但需要注册并接受EULA-acceptance--终端用户 ...

  8. Yii2:记一次尴尬的bug

    创建一个文章模块,写完添加动作之后,分配到视图,发现报错: Exception (Not Supported) 'yii\base\NotSupportedException' with messag ...

  9. NGINX 配置文件配置url重写

    1.项目在根目录: location / {            index  index.html index.htm index.php l.php;            autoindex  ...

  10. Yii2.0 的安装学习

    视频学习地址: 后盾网视频: http://www.houdunren.com/houdunren18_lesson_76?vid=7350 与<Yii框架>不得不说的故事—基础篇 htt ...

随机推荐

  1. 使用Logstash工具导入sqlserver数据到elasticSearch及elk分布式日志中心

    首先记下这个笔记,Logstash工具导入sqlserver数据到elasticSearch. 因为logstash使用java写的,我本地开发是win11,所以javade jdk必须要安装.具体安 ...

  2. 2.PyQt5【窗口组件】对话框-Dialog

    一.前言 QDialog 类是对话框窗口的基类.对话框窗口是主要用于短期任务以及和用户进行简要 通讯的顶级窗口.QDialog 可以是模态对话框也可以是非模态对话框.QDialog 支持扩展性并 且可 ...

  3. 经典问题 1 —— DAG 上区间限制拓扑序

    问题描述 给定一个 DAG,求一个拓扑序,使得节点 \(i\) 的拓扑序 \(\in [l_i,r_i]\). 题解 首先进行一个预处理:对于所有 \(u\),令 \(\forall (v,u)\in ...

  4. js获取时间最详细~~~~

    最详细 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...

  5. 带你熟悉3种AQS的线程并发工具的用法

    摘要:AQS 的全称为(AbstractQueuedSynchronizer),AQS 是一个用来构建锁和同步器的框架,使用 AQS 能简单且高效地构造出应用广泛的大量的同步器. 本文分享自华为云社区 ...

  6. 递归概念&分类&注意事项

    递归概念&分类&注意事项 概念 递归:指在当前方法内调用自己的这种现象. 递归的分类:.递归分为两种,直接递归和间接递归..直接递归称为方法自身调用自己..间接递归可以A方法调用B方法 ...

  7. 3DText无法被物体遮挡 - 解决

    目录 开篇: 问题复现: 如何解决: 1.创建一个Shader 2.创建一个Material 3.给Material赋值字体 4.给3DText属性赋值 5.查看效果 希望大家:点赞,留言,关注咯~ ...

  8. windows10环境下的RabbitMQ安装步骤

    RabbitMQ是一个在AMQP协议标准基础上完整的,可复用的企业消息系统.它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rab ...

  9. 【OpenWrt】N1刷机过程及旁路由设置(通用)

    最近买了个N1盒子,从源系统刷到OpenWrt,总结一下整体过程,大部分都来源于网络教程和自己实践,如有错误欢迎指出! N1盒子刷机 固件准备 最著名的应该是F大的吧,原贴地址:[2023-2-14] ...

  10. vue @click的stop和prevent

    @click.stop 阻止事件冒泡 @click.prevent 阻止事件的默认行为 联合饿了吗UI使用的时候,el-table(主表)包含一个或多个子表时(el-tabs),点击右侧的编辑.删除时 ...