使用Composer从零开发一个简单的restful框架(01)-项目初始化 
                                                    
                        
                    
                    
  
                    
                    最终源码
软件版本
- Apache 2.4.53,安装参考 wamp apache
 - Php 8.1.5,安装参考 wamp php
 - Composer 2.7.4,安装参考 Composer安装配置和使用
 
创建项目
创建phpapi项目目录,并在其下创建public目录
$ mkdir phpapi/public -p
新建public/index.php项目入口文件,内容如下
<?php
echo 'Hello, World!';
Apache 配置
编辑C:\Windows\System32\drivers\etc\hosts文件,添加一条记录
127.0.0.1        phpapi.com
编辑D:\apps\wamp\httpd-2.4.53\conf\extra\httpd-vhosts.conf,添加 web 站点配置
<VirtualHost *:80>
    DocumentRoot        "D:/apps/wamp/www/phpapi/public/"
    ServerName          phpapi.com
</VirtualHost>
重启Apache
浏览器访问http://phpapi.com/
Apache 重定向
框架是单一入口,所有的请求都由index.php统一处理,当访问http://phpapi.com/xxx/ooo 链接时,也会由index.php处理。但现在还需要配置一下Apache的重定向规则,不然访问会返回Not Found
Not Found
The requested URL was not found on this server.
编辑D:\apps\wamp\httpd-2.4.53\conf\httpd.conf文件,找到#LoadModule rewrite_module modules/mod_rewrite.so取消注释开启重定向功能
重启Apache
新建public/.htaccess,内容如下(如果创建不了,可以使用 Git Bash,执行 touch public/.htaccess 命令创建文件)
<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews -Indexes
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  #RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
  RewriteRule .* /index.php [L] #如果这行配置不行,注释掉这行并取消上面行的注释
</IfModule>
浏览器访问http://phpapi.com/xxx/ooo,这时不会再返回Not Found错误了
本作品采用《CC 协议》,转载必须注明作者和本文链接
          
          
          
                关于 LearnKu
              
                    
                    
                    
 
推荐文章: