linux 上修改了nginx.conf 怎么重新加载配置文件生效
1、连接上相应的linux主机,进入到等待输入shell指令的linux命令行状态下。
2、在linux命令行下输入shell指令:/etc/init.d/nginxreload。
3、最后,按下回车键执行shell指令,此时会看到nginx重新加载了配置文件。
nginx的配置问题,采用url路由,如何配置nginx.conf
这个貌似只要定向到index.php就OK了吧。
关键是你框架的Router类够强壮,nginx.conf里面基本不用多写啥的
location/{
indexindex.php;
if(!-f$request_filename){
rewrite^/(.+)$/index.php?$1&last;
location~.*\.php?${
fastcgi_pass127.0.0.1:3333;
fastcgi_indexindex.php;
fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;
includefastcgi_params;
重定向到index.php后的处理不是这样的,index.php直接获得url中的controller、action等值,还是处理/a/b这样的格式,url中并不出现index.php。只不过是把所有请求的url交给index.php处理。
其实你的框架实现方法和ZF的URI原理很相似,都是全局index.php为入口,所有的请求全部由index.php来rule。原链接可能是这样的
?someaction=someparam&other
按照我的规则,rewrite之后url看起来应该是这样的
URL中并不会出现类似
这样的情况。
如果不能够出现这种目录式的URL结构,那么肯定是你的URI和Router没有抽象到位