php重写地址,php url地址重写
地址重寫:
urlRewrite: 就是:? 1. 將php的地址index.php不寫只寫Action模塊和function方法, 或者 2. php地址轉(zhuǎn)變成html地址, 就是一種假的html,
所以叫偽靜態(tài).(除了偽靜態(tài)外, 還有真的靜態(tài)化, 就是真的將原來(lái)php的頁(yè)面靜態(tài)為html, 然后客戶請(qǐng)求的就是這個(gè)html)
偽靜態(tài):? 就是只是請(qǐng)求的地址變成了靜態(tài), 沒(méi)有*.php的字樣出現(xiàn), 而實(shí)際上服務(wù)器還是要進(jìn)行動(dòng)態(tài)處理).
自己足夠強(qiáng)就用thinkphp框架寫, 否則就用cms寫二次開(kāi)發(fā)
web性能優(yōu)化:? 1. 偽靜態(tài) 2. 緩存cache
偽靜態(tài):
1. 打開(kāi)apache的rewrite模塊:? #LoadModule? rewrite_module? modules/mod_rewrite.so?? 在:httpd.conf
2. 修改每個(gè)目錄下的:? AllowOverride? None--->All
3. netstat命令是net命令的加強(qiáng)版(net命令可以簡(jiǎn)單的管理本地和遠(yuǎn)程計(jì)算機(jī)的登錄/賬戶/安全/網(wǎng)絡(luò)等命令).
net? start/stop service_name...
4. 在主入口文件index.php所在的目錄下寫.htaccess文件, 寫上重寫規(guī)則...
------------------------------------------------
php本身具有數(shù)據(jù)類型;
但是php的數(shù)據(jù)類型是動(dòng)態(tài)的: 根據(jù)變量的" 字面"取值來(lái)確定其類型, $x="abc"; $x=123; 這樣的語(yǔ)句是可以的
不會(huì)硬性地規(guī)定$x是什么類型, 也不會(huì)進(jìn)行類型檢查: int $x, 這樣的語(yǔ)句在php中是沒(méi)有多少意義的.
這樣更靈活!
設(shè)計(jì)方法:
可以將表現(xiàn)頁(yè)面和邏輯頁(yè)面分開(kāi),采用mvc的方法,? 如thinkphp框架也可以采用混合書寫: 將php和html寫在一起的方法, 如ecshop早期的,
并沒(méi)要哪個(gè)比哪個(gè)更好, 只要你足夠牛, 都可以寫出好的web appication
兩種代碼和風(fēng)格都要適應(yīng),都可以應(yīng)對(duì).
php面向?qū)ο髥?
php是一種混合編程語(yǔ)言, 如同大名鼎鼎的C++一樣, 既可以寫全局函數(shù), 全局變量, 也可以寫面向?qū)ο蟮拇a. 跟C++的設(shè)計(jì)理念
完全一樣.? 而java和c#則是純粹的面向?qū)ο蟮木幊陶Z(yǔ)言
面向過(guò)程, 基于對(duì)象(雖然使用了對(duì)象, 但是還是以過(guò)程化的思維...), 面向?qū)ο? 一切皆對(duì)象, 對(duì)象之間通過(guò)消息進(jìn)行通信: 其中"可替換性"是oop的最重要的一種思想.
面向過(guò)程編程 : 是以過(guò)程為中心, 以算法為驅(qū)動(dòng):? 程序=算法+數(shù)據(jù)結(jié)構(gòu)
面向?qū)ο缶幊? 是以對(duì)象為中心, 以消息為驅(qū)動(dòng): 程序=對(duì)象+消息
因此: 對(duì)php項(xiàng)目中的php文件如何看待? (用c++等的思維和眼光來(lái)看php)!
1. 這些php文件如果是定義的類, 就把它保存為單獨(dú)的類文件php, 如同C++的類文件一樣: Class.h Class.cpp
2. ?同樣的php中文件中的全局變量/全局函數(shù), 默認(rèn)的也是全局的, 可以export的, 如同C++的一樣???
============================
php中的static?
在基類/派生類中對(duì)成員(變量或函數(shù))的調(diào)用方法::分靜態(tài)還是非靜態(tài)? 是類的內(nèi)部還是類的外部?
一般非靜態(tài)的成員調(diào)用:? 類的內(nèi)部用$this->var; 類的外部: $obj->var;
因?yàn)轭惖膶?shí)例只能是: $obj=new Object();
對(duì)靜態(tài)的成員:
類的外部:? 只能是 ClassName:: $staticVar, ClassName::staticFun();
類的內(nèi)部就分: 自身的類: self::$staticVar, self::staticFun();
派生類調(diào)用基類:? parent::$staticBaseVar, parent::staitcBaseFun()
基類調(diào)用派生類的靜態(tài), 用static關(guān)鍵字:: ? static::$staticDerivedVar,? static::staticDerivedFun()
net命令?
net命令, 如同yum, rpm命令一樣, 后面跟子命令: start, stop, user,等等 :
net start service_name , 而不是: net service_name start/stop.
mvc層的關(guān)系?
c層是控制層, 設(shè)計(jì)時(shí): 一個(gè)控制層一般對(duì)應(yīng)著一個(gè)功能模塊, 如article文章控制器就對(duì)應(yīng)著文章的功能模塊, 其中的方法,就對(duì)應(yīng)著對(duì)
文章模塊的操作, 如:增加文章, 刪除文章 , 修改文章等等.
v層和c層之間的對(duì)應(yīng)關(guān)系:
一個(gè)控制器(ActionClass) 一個(gè)功能模塊,
那么, 控制器下的方法 對(duì)應(yīng)著功能模塊下的"方法頁(yè)面"
Article控制器對(duì)應(yīng)著article模塊, 下面的方法add, delete, modify就應(yīng)該對(duì)應(yīng)著相應(yīng)的add.html, delete.html等頁(yè)面了.
所以: 有一個(gè)controller,就對(duì)應(yīng)地, 要在tpl/default(或者你自己的模板)/ 目錄下建一個(gè)文件夾:article/
有一個(gè)方法, 就對(duì)應(yīng)的, 要在article/目錄下, 建一個(gè)add.html頁(yè)面文件...
thinkphp頁(yè)面的顯示:
兩種方法: 1. 直接在 對(duì)應(yīng)的方法中調(diào)用方法:? $this->display();
2.? 向?qū)?yīng)的模板文件如:add.html中傳遞變量值:? $this->assign("變量名", "變量值");
apache本身提供了對(duì)php頁(yè)面的地址重寫功能?
1. LoadModule? rewirte_module? modules/mod_rewrite.so
2? 和.htacess文件的配合.
Nginx 的編譯安裝和URL地址重寫
本文轉(zhuǎn)自:http://www.178linux.com/14119#rd?sukey=ecafc0a7cc4a741b573a095a3eb78af6b4c9116b74d0bbc9844d8fc5 ...
Magento 自定義URL 地址重寫 分類分級(jí)顯示
我們打算將URL在分類頁(yè)面和產(chǎn)品頁(yè)面分別定義為: domain.com/category/分類名.html domain.com/category/子分類名.html domain.com/goods ...
Url地址重寫
一?什么是url重寫URL?重寫是截取傳入?Web?請(qǐng)求并自動(dòng)將請(qǐng)求重定向到其他?URL?的過(guò)程.比如瀏覽器發(fā)來(lái)請(qǐng)求?hostname/101.aspx?,服務(wù)器自動(dòng)將這個(gè)請(qǐng)求中定向?yàn)閔ttp://h ...
Apache Nginx URL 地址 重寫
URL重寫這東西在工作中用了很多次了,但每次都忘記了要記得把知道的積累下來(lái). 哎,要么認(rèn)為沒(méi)必要,要么就是沒(méi)時(shí)間?! 一.Apache 篇 官方地址:http://man.chinaunix.net/ ...
springboot中url地址重寫(urlwrite)
在日常網(wǎng)站訪問(wèn)中,會(huì)把動(dòng)態(tài)地址改造成偽靜態(tài)地址. 例如: 訪問(wèn)新聞欄目 /col/1/,這是原有地址,如果這樣訪問(wèn),不利于搜索引擎檢索收錄,同時(shí)安全性也不是很好. 改造之后: /col/1.html. ...
URL地址重寫例子(Helicon)
# Helicon ISAPI_Rewrite configuration file# Version 3.1.0.86 #RewriteEngine on RewriteRule ^/esf/.+( ...
【轉(zhuǎn)載】ASP.NET MVC重寫URL制作偽靜態(tài)網(wǎng)頁(yè),URL地址以.html結(jié)尾
在搜索引擎優(yōu)化領(lǐng)域,靜態(tài)網(wǎng)頁(yè)對(duì)于SEO的優(yōu)化有著很大的好處,因此很多人就想把自己的網(wǎng)站的一些網(wǎng)頁(yè)做成偽靜態(tài).我們現(xiàn)在在網(wǎng)絡(luò)上發(fā)現(xiàn)很多博客網(wǎng)站.論壇網(wǎng)站.CMS內(nèi)容管理系統(tǒng)等都有使用偽靜態(tài)這一種情況,偽 ...
解決URL中包含“%2F”導(dǎo)致Apache地址重寫mod_rewrite失效的問(wèn)題
在使用Apache地址重寫mod_rewrite期間,發(fā)現(xiàn),當(dāng)URL和PATH_INFO中出現(xiàn)%2f(/)或者%5c(\), 會(huì)被認(rèn)為這是個(gè)不合法的請(qǐng)求, Apache將會(huì)直接返回"404 ...
IIS:URL Rewrite實(shí)現(xiàn)vue的地址重寫
vue-router 全局配置 const router = new VueRouter({ mode: 'history', routes: [...] }) URL Rewrite 1.添加規(guī)則 ...
隨機(jī)推薦
ab post 測(cè)試 http 和 webservice 接口方法及用例
1.ab測(cè)試簡(jiǎn)單http請(qǐng)求 ab -n30000 -c1000 "http://10.1.1.21:8080/" 2.ab 測(cè)試 http 接口 (POST) ab -n400 ...
《JavaScript高級(jí)程序設(shè)計(jì)》心得筆記-----第四篇章
第十六章 1.? 跨文檔消息傳送: postMessage("消息", "發(fā)送消息的文檔所在域") 2.? 拖放事件: 1)?? 拖動(dòng)某元素會(huì)依次觸發(fā):drag ...
jQuery源碼筆記——三
將類數(shù)組對(duì)象轉(zhuǎn)化為數(shù)組對(duì)象 javascript中有許多類數(shù)組對(duì)象,比如HTMLCollection,NodeList,arguments.她們的特點(diǎn)是和數(shù)組一樣有l(wèi)ength屬性,并且有0,1,2這 ...
我的第一次windows規(guī)劃
#include ? LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; //WinMain功能被分配一 ...
如何在Chrome下使用Postman進(jìn)行rest請(qǐng)求測(cè)試
在web和移動(dòng)端開(kāi)發(fā)時(shí),常常會(huì)調(diào)用服務(wù)器端的restful接口進(jìn)行數(shù)據(jù)請(qǐng)求,為了調(diào)試,一般會(huì)先用工具進(jìn)行測(cè)試,通過(guò)測(cè)試后才開(kāi)始在開(kāi)發(fā)中使用.這里介紹一下如何在chrome瀏覽器利用postman應(yīng)用進(jìn) ...
[APIO 2016]Gap
Description 題庫(kù)鏈接 給你一個(gè)長(zhǎng)度為 \(N\) 的單調(diào)遞增序列 \(A\) .交互時(shí)允許你調(diào)用 MinMax(s, t, &mn, &mx) 函數(shù),表示序列元素的值在 \ ...
mysql安裝與配置(以mysql-5.7.10-winx64為例)
一.在官網(wǎng)上下載相應(yīng)的mysql安裝包,本人下載的是:mysql-5.7.10-winx64 (Windows (x86, 64-bit), ZIP Archive) 附下載地址:http://dev ...
Application.Current的使用
來(lái)源 http://www.cnblogs.com/symons/archive/2010/03/15/1686200.html Application.Current的使用 WPF程序?qū)?yīng)一個(gè)App ...
設(shè)計(jì)模式-創(chuàng)建型模式,python享元模式 、python單例模式(7)
享元模式(Flyweight Pattern)主要用于減少創(chuàng)建對(duì)象的數(shù)量,以減少內(nèi)存占用和提高性能.這種類型的設(shè)計(jì)模式屬于結(jié)構(gòu)型模式,它提供了減少對(duì)象數(shù)量從而改善應(yīng)用所需的對(duì)象結(jié)構(gòu)的方式. 享元模式嘗 ...
Oracle_PL/SQL(1) 匿名塊
1. PL/SQL 簡(jiǎn)介PL/SQL是一種比較復(fù)雜的程序設(shè)計(jì)語(yǔ)言, 用于從各種環(huán)境中訪問(wèn)Oracle數(shù)據(jù)庫(kù).為什么使用PL/SQL?Orade是一種關(guān)系型數(shù)據(jù)庫(kù), 用來(lái)訪問(wèn)關(guān)系型數(shù)據(jù)庫(kù)的語(yǔ)言是 “結(jié)構(gòu) ...
總結(jié)
以上是生活随笔為你收集整理的php重写地址,php url地址重写的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: html自动随机跳转网址,网页随机跳转代
- 下一篇: XMPP之openfire无法启动