我想按以下方式构建我的项目:我想将所有 HTML 文件放在名为 的文件夹中views。 partials保存文件head.html,footer.html并且header.html。这些是包含在我的视图中的三个简短的 HTML 片段;这样,当我更改标题中的某些内容时,我不必在每个视图中单独更改它。但只有一次在部分。media保存着我的图像。css分别js是我的样式和 Javascript。这是我想要的结构,但我遇到了以下问题:如何避免出现http://example.com/views/index.php?我只想要http://example.com/index.php。我通过使用 htaccess MOD_REWRITE 尝试了这一点;但这也搞乱了我的包含。如何从 head 部分包含 CSS 和 Javascript?所以,我有一个看起来像这样的头部部分:<link rel="stylesheet" type="text/css" href="css/general.css"><script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script><script src="js/general.js" defer></script>通过使用 PHP 的file_get_contents(). 但是,我需要以某种方式静态链接这两个文件。我该怎么做呢?我的部分内容加载如下:<?php echo file_get_contents("partials/head.html"); ?>另外,我该如何静态地做到这一点?我通过使用进行了尝试$_SERVER['DOCUMENT_ROOT'],但是这会返回/Users/myName/...,导致我的包含失败。理想的解决方案是,如果我可以从名为vereniginglike的文件夹开始链接所有内容href="/css/..." src="/media/...。编辑:这是我当前的 htaccess 内容:RewriteEngine On# browser requests PHPRewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^\ ]+)\.phpRewriteRule ^/?(.*)\.php$ /$1 [L,R=301]# check to see if the request is for a PHP file:RewriteCond %{REQUEST_FILENAME}\.php -fRewriteRule ^/?(.*)$ /$1.php
2 回答

侃侃无极
TA贡献2051条经验 获得超10个赞
第一个问题通过以下方式解决.htaccess:
RewriteCond %{REQUEST_URI} !^/(views|css|js|media|partials|php)
RewriteRule (.*) /views/$1
第二个问题和第三个问题的解决方法如下:
<base href="http://example.com/" target="_self">

FFIVE
TA贡献1797条经验 获得超6个赞
最好使用一些框架,例如 laravel 或 Codeigniter 来完成您的目标。
要从您的网址中删除视图,请按如下方式编辑您的 .htaccess
RewriteRule 上的 RewriteEngine ^views(/.*|)$ $1 [L]
要添加 css,您需要退出索引目录,然后访问这些文件夹,如下所示。
href="../css/general.css"
- 2 回答
- 0 关注
- 115 浏览
添加回答
举报
0/150
提交
取消