无状态 / cms
无状态内容管理系统
Requires
- php: ^7.0
README
面向对象的PHP构建块,用于网站和Web应用程序。
介绍
StatelessCMS是一个无头PHP框架,旨在创建数据库驱动的PHP应用程序,“无头”意味着没有现有的前端。StatelessCMS本身不是一个应用程序或CMS,它只是为你提供构建自己应用程序的构建块。
安装
最低要求
获取运行PHP 7.0和SQL数据库的服务器。注意:推荐使用apache,因为从v0.0.3版本开始,Request::getHeaders()和Request::getToken()依赖于apache_get_headers()。
Composer安装
安装StatelessCMS最简单的方法是使用Composer安装
composer require stateless/cms
网络下载
从https://github.com/StatelessSoftware/StatelessCMS/releases下载最新版本。
开发
如果您想获取实时开发分支,请从github下载或克隆。https://github.com/StatelessSoftware/StatelessCMS.git
设置您的第一个项目
虽然您可以选择任何目录结构,但StatelessCMS常用的基本结构如下。不必过于担心具体细节——我们将逐步创建每个部分。
|- app
|- Controller
|- Form
|- FormInput
|- Layout
|- Menu
|- Model
|- View
|- app.php
|- functions.php
|- conf
|- app.conf.php
|- public
|- css
|- js
|- .htaccess
|- index.php
|- vendor
|- stateless
如果您还没有安装,请将StatelessCMS安装到vendor/stateless(遵循上述安装说明)
入门
打开public/index.php。插入以下代码
<?php namespace Stateless; require_once("../vendor/autoload.php"); echo "Home";
如果您未使用Composer下载和安装StatelessCMS,请将../vendor/autoload.php更改为您的StatelessCMS.php文件
关于public/index.php
此文件是入口点,意味着它是程序的开始。目前,我们将使用它来展示示例。稍后,我们可以用它来启动应用程序。
测试
打开浏览器,导航到localhost/public/,您应该看到主页。
配置您的服务器
确保您的httpd文档根设置为public/。现在导航到localhost/,您应该看到主页
启用mod_rewrite(干净URL)
- 在
public
目录块中,设置AllowOverride All
- 将以下htaccess文件复制到public/.htaccess
您可能需要安装mod_rewrite
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
多个页面
现在我们将创建带有干净URL的额外页面。将以下代码中的index.php
替换掉
<?php namespace Stateless; require_once("../vendor/autoload.php"); switch (Request::getPath()) { case "/": echo "Home"; break; case "/about": echo "Read all about us!"; break; case "/contact": echo "Contact us."; break; default: Response::header(404); echo "Page not found."; break; }
在浏览器中打开localhost/about
,你应该会看到“了解我们的一切!”