聯(lián)系官方銷售客服
1835022288
028-61286886
自定義url成功,但偽靜態(tài)404錯誤
網(wǎng)站欄目和頁面都是自定義網(wǎng)址,url規(guī)則里面都是按照需求修改完畢,
修改config/custom.php
現(xiàn)在前臺各個鏈接都是自定義靜態(tài)鏈接,但是點擊打開后所有自定義鏈接都是404錯誤。
各段代碼請見附件
rewrite.php添加后所有內(nèi)容為:
問題:我的動態(tài)鏈接是:
index.php?c=category&id=$1&page=$2
而不是:
index.php?c=category&dir=$1&page=$2
根目錄下:.htaccess修改如下
404錯誤沒有顯示自己的404頁面,而是顯示phpstudy的404頁面:
原因5:站點使用了偽靜態(tài)
解決辦法:
將偽靜態(tài)規(guī)則刪除,或者重新編寫正確的偽靜態(tài)規(guī)則,或關(guān)閉偽靜態(tài)配置。
請教大佬這個偽靜態(tài)規(guī)則哪里出問題了?
偽靜態(tài)404必然是解析規(guī)則錯誤,花點時間去分析解析規(guī)則
不懂別亂改,用默認生成
不懂,付費修改
回復迅睿框架創(chuàng)始人
為何我的后臺seo界面和說明不一樣,已經(jīng)升級到最新版本了。
回復迅??蚣軇?chuàng)始人
我現(xiàn)在全部初始化,現(xiàn)在訪問出現(xiàn)500錯誤是規(guī)則沒有寫好嗎?
是否欄目設(shè)置里面修改后點擊后臺這個頁面就能打開呢?
回復@tangjun 查下服務(wù)器有不有配置偽靜態(tài)規(guī)則,按官方規(guī)則做,完全沒問題,如果還沒解決,可以私我。
回復@難忍 我用的phpstudy-小皮 xp.cn. 搭建的本地服務(wù)器, 目前配置的.htaccess 位于根目錄下。
其他規(guī)則且不說,rewrite.php 下面這條同我動態(tài)頁面網(wǎng)址是一致的,但是訪問出現(xiàn)404錯誤。
"show-([0-9]+)\.html" => "index.php?c=show&id=$1", //【不帶欄目路徑】模塊內(nèi)容頁(show-{id}.html)
就是:/index.php?c=show&id=14打開正常,
/show-14.html 打開404錯誤。
回復@? 年少的少年。
我的規(guī)則是:欄目:目錄名稱.html
文章名:自定義地址.html
例:http://127.0.0.1/index.php?c=category&id=1&page=2
規(guī)則:"([A-za-z0-9 \-\_]+)-([0-9]+)\.html" => "index.php?c=category&id=$1&page=$2", //【不帶欄目路徑】模塊欄目列表(分頁)(list-{dirname}-{page}.html)
例:http://127.0.0.1/index.php?c=show&id=14
規(guī)則:"([A-za-z0-9 \-\_]+)\.html" => "index.php?c=show&id=$1", //【不帶欄目路徑】模塊內(nèi)容頁(show-{id}.html)
例:http://127.0.0.1/index.php?c=category&id=3
規(guī)則:"([A-za-z0-9 \-\_]+)\.html" => "index.php?c=category&id=$1", //【不帶欄目路徑】模塊欄目列表(list-{dirname}.html)
目前:http://127.0.0.1/index.php?c=show&id=14 可以打開,但http://127.0.0.1/show-14.html 無法打開
內(nèi)容和欄目規(guī)則沖突了,只能生效一個
回復@小波工作室
只保留1條規(guī)則
"([A-za-z0-9 \-\_]+)\.html" => "index.php?c=show&id=$1", //【不帶欄目路徑】模塊內(nèi)容頁(show-{id}.html)
自定義地址.html 和 id.html 打開都是404錯誤,感覺這個rewrite.php不起作用。
// 判斷url是否是來自自定義函數(shù)
if (CMSURI) {
$myfile = WRITEPATH.'mid/'.md5(CMSURI).'.txt';
if (is_file($myfile)) {
$id = file_get_contents($myfile);
if ($id) {
return [
CMSURI => 'index.php?c=show&id='.$id, // 這里寫內(nèi)容的地址
];
}
}
}
// 自定義---解析規(guī)則----結(jié)束
"([a-z]+)\/([0-9]+)" => "index.php?c=show&field=yuming&value=$1",
// 自定義---解析規(guī)則----結(jié)束
custom.php
function xxxurl($data) {
$author = isset($data['_id']) ? $data['_id'] : $data['id'];
$url = "/".$id;
dr_mkdirs(WRITEPATH.'myid/'); // 創(chuàng)建id緩存存儲目錄
file_put_contents(WRITEPATH.'myid/'. md5(trim($url, '/')).'.txt', $data['id']); // 將id號存儲緩存文件
return $url; //返回我自己的
}
custom.php
function xxxurl($data) {
$author = isset($data['_id']) ? $data['_id'] : $data['id'];
$url = "xx/".$id;
dr_mkdirs(WRITEPATH.'myid/'); // 創(chuàng)建id緩存存儲目錄
file_put_contents(WRITEPATH.'myid/'. md5(trim($url, '/')).'.txt', $data['id']); // 將id號存儲緩存文件
return $url; //返回我自己的
}
// 自定義---解析規(guī)則(config/rewrite.php )----結(jié)束
"([a-z]+)\/([0-9]+)" => "index.php?c=show&field=id&value=$1",
// 自定義---解析規(guī)則(config/rewrite.php )----結(jié)束
xx 這個你自己改成你想要的也可以不要!id 可以改成你需要的字段
field=id 這個我獨立用的是模塊字段
我用的獨立模塊,沒有改過共享的自定義
回復@王小五
出錯:Parse error: syntax error, unexpected 'xxxurl' (T_STRING), expecting '(' in F:\phpstudy_pro\WWW\config\rewrite.php on line 48
回復@tangjun
回復@tangjun 上面代碼不能放rewrite.php里面
回復@王小五
我現(xiàn)在是自定義文件名,字段myurl。
代碼不放錯,或者還錯,應(yīng)該不會有問題的,// 自定義---解析規(guī)則----開始
// 自定義---解析規(guī)則----結(jié)束
一定要隔開,不然還是404
自定義怎么樣了?
回復@王小五
不好意思,前段時間工作忙,沒時間研究。
老是有問題,已經(jīng)把網(wǎng)址、數(shù)據(jù)庫全部清零。這幾天有時間來重頭研究。不知道你有什么好的建議。
回復@tangjun 先弄獨立模塊的偽靜態(tài)
回復@王小五
請教一下,搜索,靜態(tài)調(diào)用有沒有什么好辦法。
這個是官方程序,搜索后是動態(tài)地址:http://127.0.0.1/index.php?s=article&c=search&keyword=關(guān)鍵詞
我想調(diào)用靜態(tài)地址:http://127.0.0.1/search/keyword-關(guān)鍵詞.html
我現(xiàn)在的動態(tài)搜索代碼如下:
"search\/(.+)\.html" => "index.php?s=article&c=search&keyword=$1",
試一試這個!
回復@王小五
我的偽靜態(tài)正常:
"search\/(.+)\.html" => "index.php?s=article&c=search&rewrite=$1", //【共享模塊搜索】模塊搜索頁(分頁)(search/{modname}/{param}.html)
"search\.html" => "index.php?s=article&c=search", //【共享模塊搜索】模塊搜索頁(search/{modname}.html)
"tag\/(.+)\-([0-9]+)\.html" => "index.php?s=tag&name=$1&page=$2", // tag插件分頁
"tag\/(.+)\.html" => "index.php?s=tag&name=$1", // tag插件
總結(jié):放棄了“/欄目名/欄目名/文件名.html”這種文件路徑,只能做301跳轉(zhuǎn),原de的網(wǎng)址完全照搬是行不通的。
接單各種復雜的url定義方案,需要的加下方QQ