以前都是找运维来弄,可现在公司没有专业的运维,又找不到人帮忙,只能自己研究了
弄了一个上午,终于弄明白了
1.多站点/二级域名
a.如果是服务器,那么域名指向是必须的, 我现在只是要配置自己的开发机,就要修改HOST(这个文件位置就不说了)
b. host 中 加入以下
127.0.0.1 www.dword.com
127.0.0.1 admin.dword.com
127.0.0.1 project.my.com
以上加了两个站点,其中dword站点分了两个二级域名
*由于HOST不允许泛域名,只能逐个二级域名分别指定了
c.Apache 的 httpd.conf 文件中
<VirtualHost *:80>
DocumentRoot "D:/wamp/www/decar/public/"
ServerName www.dword.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "D:/wamp/www/wu/public/"
ServerName admin.dword.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "D:/wamp/www/project/public/"
ServerName project.my.com
</VirtualHost>
以上指定了让Apache监听80端口,同时根据域名(三个)来定位到不同的文件目录中
2.重写
规则或条件的语法还好说,总体结构不好弄明白. 简单方法处理吧, 先判断简单条件. 注意以下的顺序很重要
RewriteRule \.php$ index.php [NC,L]
RewriteRule \.html$ index.php [NC,L]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule \.(gif|png|jpg)$ - [NC,L]
RewriteRule .* - [F]
a.所有的*.php 都由index.php处理(单一入口)
b.所有的*.html都由index.php处理(伪静态)
c.如果指定的文件不存在
d.如果找不到的文件是图片, 返回404
e.如果找不到的文件是其它文件,403(禁止访问)