LNMPA端口更改问题,急急急
LNMPA虚拟机端口改成8089,已经在nginx中更改如图:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAb4AAAB+CAIAAADUcOO+AAAFwUlEQVR4nO3dTbKjNhQGUBabeSo76ZVmCy8DV3UTg651BTICnVMeqIWtP8Nn7Gfcyz9//+Xm5ubmlrotAAAAwJh+fpafn6sHAXAjr9wUnQAJqej89e+v9W23/q2yvpxtB+BKldFZiq2PsfiWhs3lbaoCXKZrdG4f0hadEhMYS9sb9t3KmjfXHyOysh2AKzX8mSgbkTWPzbYDcKUvR+cSnr2m2gG4TOqzzt1PHlNRGGxtaAcAAAAAAAAAAAAAgGkN+HudvgMP3MM46Sk3gdsQnQBpohMgR24C5MhNgLRBcvNFegK0kJ7ADfz+Xucgp5+iEyBNdAK0kJ4AAAAAAAAAMCx/1gcShvo+fFevcCxFZCo6e+dsMNTdTaX7x1MGjpokPZeTUq9rGK0b343It3Lp/kE7wDlmjs7KU7y3GKo/+yvduWaEpehct9YWnc5G4QQzR2epPkiWIGfry/EIt7G4hNFZH6PbXoC0eT7rfBk/OpdVrgVDKp0If7wzcJp50rM+Ope6CNu98/GzzmXvxHD3BLPm/qITuhCdcbgEJ3SpllPRWeq3FJ3ZgQFHic4bRedbOW4/HpVIhUbzfNYZv6H+WB+0VlO5LVcOtbnfJcxH0QnQQnQC5MhNAAAAAAAAAAC6m+HL8AAnE50Aaa/onPNazN36t8r6crad7CDj9lMXaAb9Hi/3bv/EC1uz67ne+rFTHm6e6Iyv5g7Kb0dLc7nyqKuJhlL72+7idlLrUFnu3f7X+t0u41L9JPJ8ojM+hLYPaTsU6w+2q6JzPdTSqVZlfe/2U/22Pe9LITrhf2aIziX5Bq05aivbiQe5+9i4/d3obEu34/W92z93RqKTtN8/OjdJer5kI7LmsT3CJVXejc76fpf/p+2R+t7tp/oVnXQ0VW4uhyNv99C9e3Q297vbV7w+Pcqn97u7jKmXCp5vhuhc513NWUx8hOxubWgnbrl03H68TzCebL+XR9jBfoN1qHm+RCfACUQnQI7chCu9vfX2NhAAAAAAAKCz0f4aM9p4rjLbOsw23wea7SrMtl22344+zniCNlPdtX1h4Hnr0NzL6Y9qI9w5wWi70fiR8Z0VG38dziU6uUDN1XiVmz5ewFez2408nlLj2zbjocY9zrAOj5lvzTjXW+NOuZ/4IO9Rvst4gvsHB8kS/kzGh8kXej8+x3HW4b7zbWt/ouic6oPOpecuu6z2m/pdZ5zxPDU6l0vX4b7zPSuaH26e9Dxrly3tnVdFxvHxPCM6R1uH+85XdFYRnW3l3cZT+9M443lGdAaNX7IONb3Uz+ub8xWdn82Tm0vPXbZtl7pqPNtD66nRee063He+bWOoj+zbmyc31y/FlbvC7v3f6t8qd9sZcDzN9/8YK6V5zbYO95pvfTvxk1v5pAPcWzbpKl8bDo8LYGDnRqfcBKZw+lknAAAAnM67UYA00QmQJjqpNdvPf5zi9AMs/hpzP4Mnxfe/Qjj4gjAQudlAdH6H6GRc8+Rm5YVu24fEF64dP9IqL4xrGE88yODCu/U/j9R3Xedg/M3lt4IYpWieN+yloyJb3v7zrIG1jWc9r+00gwEH2bfbTkN913UWnVxvhvSsOXn5fnRum/pOdAY1p0Rn73UOuihNraZeXJIzT3TG9c+Lzjg1dmtOic54pp2i83i96CRHdNaXg6ZOGdK50dnQ7/jRGdeXXhVq6kUnOaKzvhw0dcqQrorO4LGp+quis3nddieyG7Xwx4R/Jiptqj9biTcdHM/HKInzZfvw+tzvGp2l8QT1u5vOimbRCbd01ZF590ToOv7K1wAA/iidXwNQJDEB0kQnQJroBAAAALix31+Jn+Fb8QBnEp0AOXITIE10AuTITYA00QmQJjcB0kQnQJroBAAAAAAAAAAAAGAm/tMbeJR5fuf4FV5dIyxo/DvRKaDhqyZJz6VzuFyeXJcPAOYyeXSWTkhT9evK9abgbLemnYNTA3r4D5T0IsHXSx9GAAAAAElFTkSuQmCC
在浏览器中输入 xxx.xxxx.com和 xxx.xxxx.com:8089 显示的都是 /home/wwwroot/xxx 中的内容。
军哥求教啊 图没贴上~ 你先说你想要干什么吧 我配置了一个phpmyadmin,配置一个生僻端口8089,我想只有8089端口可以访问虚拟机,别的端口都不行。我修改ng配置之后,80和8089端口都可以访问,没达到我的需求 刚才看别人的帖子实验了下。
如下:
目前我有三个站点,
site1.xxx.com 要求: 只有80端口可以访问
site2.xxx.com:8089 要求 :只有8089端口可以访问
site3.xxx.com:8088 要求:只有8089端口可以访问
httpd.conf
加入 Listen 127.0.0.1:8888
vhost/site1.xxx.com .conf
<VirtualHost *:88>
ServerAdmin webmaster@example.com
php_admin_value open_basedir "/home/wwwroot/site1:/tmp/:/var/tmp/:/proc/"
DocumentRoot "/home/wwwroot/site1"
ServerNamesite1.xxx.com
ErrorLog "/home/wwwlogs/site1.xxx.com -error_log"
CustomLog "/home/wwwlogs/site1.xxx.com -access_log" common
<Directory "/home/wwwroot/site1">
SetOutputFilter DEFLATE
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
DirectoryIndex index.html index.php
</Directory>
</VirtualHost>
vhost/site2.xxx.com.conf
<VirtualHost *:8888>
ServerAdmin webmaster@example.com
php_admin_value open_basedir "/home/wwwroot/site2:/tmp/:/var/tmp/:/proc/"
DocumentRoot "/home/wwwroot/site2"
ServerName site2.xxx.com
ErrorLog "/home/wwwlogs/site2.xxx.com -error_log"
CustomLog "/home/wwwlogs/site2.xxx.com -access_log" common
<Directory "/home/wwwroot/site2">
SetOutputFilter DEFLATE
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
DirectoryIndex index.html index.php
</Directory>
</VirtualHost>
vhost/site3.xxx.com.conf
<VirtualHost *:8888>
ServerAdmin webmaster@example.com
php_admin_value open_basedir "/home/wwwroot/site3:/tmp/:/var/tmp/:/proc/"
DocumentRoot "/home/wwwroot/site3"
ServerName site3.xxx.com
ErrorLog "/home/wwwlogs/site3.xxx.com -error_log"
CustomLog "/home/wwwlogs/site3.xxx.com -access_log" common
<Directory "/home/wwwroot/site3">
SetOutputFilter DEFLATE
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
DirectoryIndex index.html index.php
</Directory>
</VirtualHost>
nginx配置
vhost/site1.xxx.com.conf
server
{
listen 80;
#listen [::]:80;
server_name site1.xxx.com;
index index.html index.htm index.php default.html default.htm default.php;
root/home/wwwroot/site1;
location /
{
try_files $uri @apache;
}
location @apache
{
internal;
proxy_pass http://127.0.0.1:88;
include proxy.conf;
}
location ~ [^/]\.php(/|$)
{
proxy_pass http://127.0.0.1:88;
include proxy.conf;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
access_log/home/wwwlogs/site1.xxx.com.logaccess;
}
vhost/site2.xxx.com.conf
server
{
listen 8089;
#listen [::]:80;
server_name site2.xxx.com;
index index.html index.htm index.php default.html default.htm default.php;
root/home/wwwroot/site2;
location /
{
try_files $uri @apache;
}
location @apache
{
internal;
proxy_pass http://127.0.0.1:8888;
include proxy.conf;
}
location ~ [^/]\.php(/|$)
{
proxy_pass http://127.0.0.1:8888;
include proxy.conf;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
access_log/home/wwwlogs/site2.xxx.com.logaccess;
}
vhost/site3.xxx.com.conf
server
{
listen 8088;
#listen [::]:80;
server_name site3.xxx.com;
index index.html index.htm index.php default.html default.htm default.php;
root/home/wwwroot/site3;
location /
{
try_files $uri @apache;
}
location @apache
{
internal;
proxy_pass http://127.0.0.1:8888;
include proxy.conf;
}
location ~ [^/]\.php(/|$)
{
proxy_pass http://127.0.0.1:8888;
include proxy.conf;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
access_log/home/wwwlogs/site3.xxx.com.logaccess;
}
重启apache 重启nginx
测试结果:
site1.xxx.com 正常
site1.xxx.com:8088 site1.xxx.com:8089 均显示 site3.xxx.com:8088 内容
site2.xxx.com:8089 site2.xxx.com:8088 均显示site3.xxx.com:8088 内容
site3.xxx.com:8088 site3.xxx.com:8089 均显示 site3.xxx.com:8088 内容
我只想除了指定端口可以访问之外,输入其他端口均显示无法连接
site1.xxx.com 要求: 只有80端口可以访问
site2.xxx.com:8089 要求 :只有8089端口可以访问
site3.xxx.com:8088 要求:只有8089端口可以访问 iptables -I INPUT -p tcp -s 127.0.0.1 --dport 8089 -j ACCEPT
iptables -A INPUT -p tcp --dport 8088 -j DROP 感谢军哥,问题基本已经解决。但是site.xxx.com:8088 还是显示 site3.xxx.com:8088 站点的内容
但是还有一点不明白,为什么配置apache 8888端口之后,nginx中所有域名输入8089,8088 都变成 site3.xxx.com:8088 站点的内容了。
这样的问题只能用防火墙规则解决吗。
如果我只想除了指定端口可以访问之外,输入其他端口均显示无法连接
site1.xxx.com 要求: 只有80端口可以访问
site2.xxx.com:8089 要求 :只有8089端口可以访问
site3.xxx.com:8088 要求:只有8088端口可以访问
军哥辛苦~ apache会将第一个虚拟主机设为对应的默认虚拟主机
apache的虚拟主机可以都listen到127.0.0.1上就不用iptables了 军哥:apache会将第一个虚拟主机设为对应的默认虚拟主机
问:那为什么我site.xxx.com:8088 和 site.xxx.com:8089 都显示的是 site3.xxx.com:8088的内容啊。我site.xxx.com ng的配置是向apache的88端口转发的。
军哥:apache的虚拟主机可以都listen到127.0.0.1上就不用iptables了
问:您的意思是 在http.conf 中加入新的端口吗。一个ng端口对应一个apache端口。
比如ng中 site2.xxx.com:8089用apache的 89端口
ng中 site3.xxx.com:8088 用apache的 90端口转发(假设端口没被占用)
这样 site.xxx.com:8089 和 site.xxx.com:8088 就不显示别的网站了吗
这样就可以实现除了指定端口可以访问之外,输入其他端口均显示无法连接
site1.xxx.com 要求: 只有80端口可以访问
site2.xxx.com:8089 要求 :只有8089端口可以访问
site3.xxx.com:8088 要求:只有8088端口可以访问
再次感谢军哥 1 没显示对应的虚拟主机可能配置有问题或其他原因未生效
2 修改apache所有配置的listen就行了
回复 10# 的帖子
军哥,我再有个问题想请教一下,同样和题主一样是lanmp环境。问题就是,正常安装lanmp完毕后,使用vps的ip访问,正常打开lnmp安装成功欢迎页,现在我想访问ip的时候,定位到我自定义的一个新的目录,而非默认的default文件夹,nginx.conf已经修改好,静态文件也都访问正常,但是apache里的httpd-vhosts.conf 里面定义的文件路径一修改到自定义的文件夹就会出现打开php是一片空白的情况。不知道描述的是否清楚,望军哥忙里抽闲帮助回答一下哈~非常感谢
回复 11# 的帖子
信息有限开phpinfo.php 空白?
修改php.ini
display_errors = Off
display_startup_errors = Off
修改为On
重启apache 访问时看看什么错误信息
贴配置文件看看
如果是1.3安装之前修改lnmp.conf 就可以自定义路径
页:
[1]