如果我尝试使用 mysql 登录mysql -u root -p
并输入错误的密码,则会收到“拒绝访问”。
但是,如果我使用sudo mysql -u root -p
并输入了错误的 mysql 密码,那么我就可以访问。
版本:mysql Ver 15.1 Distrib 10.3.25-MariaDB,用于 debian-linux-gnu (x86_64) 使用 readline 5.2
如果我尝试使用 mysql 登录mysql -u root -p
并输入错误的密码,则会收到“拒绝访问”。
但是,如果我使用sudo mysql -u root -p
并输入了错误的 mysql 密码,那么我就可以访问。
版本:mysql Ver 15.1 Distrib 10.3.25-MariaDB,用于 debian-linux-gnu (x86_64) 使用 readline 5.2
我有一个网站,如果不输入基本身份验证凭据,任何人都不得进入。
但是,我需要每个人都可以访问媒体文件夹,因为我们正在使用创建 PDF 的第三方扩展,并且我们只能在媒体可访问的情况下对其进行全面测试。
媒体文件夹位于/var/www/company/pub/media
.
域 ( www.example.com ) 指向/var/www/company/pub
,因此pub文件夹是入口点。
这是我的 .htaccess 尝试(/var/www/company/.htaccess
):
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/pub/
RewriteCond %{REQUEST_URI} !^/setup/
RewriteCond %{REQUEST_URI} !^/update/
RewriteCond %{REQUEST_URI} !^/dev/
RewriteRule .* /pub/$0 [L]
DirectoryIndex index.php
AuthType Basic
AuthName "Protected"
AuthUserFile "/var/www/company/.htpasswd"
# Exclude media folder from basic auth
SetEnvIf Request_URI "^/media/*" media
Order allow,deny
Require valid-user
Allow from env=media
Deny from env=!media
Satisfy any
但是如果我尝试调用http://www.example.com/media/someimage.jpg那么我仍然会得到基本的身份验证登录提示。
环境:
阿帕奇 2.4.41 (Ubuntu)
我有两个网络服务器。网络服务器A有这条路线 ( netstat -r
):
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.40.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
而 Webserver B有这条路线:
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.40.0 * 255.255.255.0 U 0 0 0 eth0
有区别吗?
我在尝试将我的 netbeans 与 webserver A上的 xdebug连接并在 netbeans 中永久保持“等待连接”时遇到超时问题,它与路由有关吗?
更新:
输出ip route list
:
网络服务器A:
default via 192.168.40.20 dev eth0
192.168.40.0/24 dev eth0 proto kernel scope link src 192.168.40.44
网络服务器B:
default via 192.168.40.20 dev eth0
192.168.40.0/24 dev eth0 proto kernel scope link src 192.168.40.47
我卸载了 php7apt-get purge php
并再次安装了zypper in php7 php7-mysql
.
然后我按照 xdebug 的安装说明重新启动了 apache systemctl restart apache2
,但我的 apache 中没有 xdebug phpinfo()
,只有一些 HTTP_HEADER 出现,例如(XDEBUG_SESSION=netbeans-xdebug;)
这是我在 php.ini 中的配置:
[xdebug]
zend_extension = /usr/lib64/php7/extensions/xdebug.so
xdebug.remote_autostart=on
xdebug.remote_enable=on
xdebug.remote_handler="dbgp"
xdebug.remote_host="192.168.40.161"
xdebug.remote_port=9000
xdebug.remote_mode=req
xdebug.idekey="netbeans-xdebug"
xdebug.renite_enable = 1
xdebug.max_nesting_level = 1000
xdebug.profiler_enable_trigger = 1
xdebug.profiler_output_dir = '/var/log/xdebug'
该文件/usr/lib64/php7/extensions/xdebug.so
确实存在,我只是从源代码安装 xdebug 并将 xdebug.so 从复制modules/xdebug.so
到/usr/lib64/php7/extensions/
我什至重新启动了整个服务器。
我怎样才能解决这个问题?
更新:
我检查了 apache2 错误日志/var/log/apache2/error_log
,发现这是在重新启动 apache2 服务后立即记录的:
[Tue Jul 30 14:25:08.674685 2019] [mpm_prefork:notice] [pid 4862] AH00170: caught SIGWINCH, shutting down gracefully
AH00558: httpd-prefork: Could not reliably determine the server's fully qualified domain name, using 192.168.40.44. Set the 'ServerName' directive globally to suppress this message
[Tue Jul 30 14:25:08.758551 2019] [ssl:warn] [pid 5060] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
Failed loading /usr/lib64/php7/extensions/xdebug.so: /usr/lib64/php7/extensions/xdebug.so: undefined symbol: zend_post_startup_cb
[Tue Jul 30 14:25:08.765786 2019] [mpm_prefork:notice] [pid 5060] AH00163: Apache/2.4.33 (Linux/SUSE) OpenSSL/1.1.0i-fips PHP/7.2.5 configured -- resuming normal operations
[Tue Jul 30 14:25:08.765815 2019] [core:notice] [pid 5060] AH00094: Command line: '/usr/sbin/httpd-prefork -D SYSCONFIG -C PidFile /var/run/httpd.pid -C Include /etc/apache2/sysconfig.d//loadmodule.conf -C Include /etc/apache2/sysconfig.d//global.conf -f /etc/apache2/httpd.conf -c Include /etc/apache2/sysconfig.d//include.conf -D SYSTEMD -D FOREGROUND'
=>Failed loading /usr/lib64/php7/extensions/xdebug.so: /usr/lib64/php7/extensions/xdebug.so: undefined symbol: zend_post_startup_cb
我的服务器上有一些图标和图像。我怎样才能防止其他网站可以使用它们?假设该网站www.evil.com
正在他们的网站上加载我们的图像,例如
<img src="www.oursite.com/icons/some_icon.png">
有没有办法阻止其他网站加载我们的资源,或者如果我注意到它,我是否必须阻止任何 IP?
我正在强制我的网络服务器将一个无 www URL 重写为 www,例如https://example.com
to https://www.example.com
, via .htaccess
。
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
但是我的网站没有加载www并打印ERR_TOO_MANY_REDIRECTS。
如果我输入这样的 URL,https://www.example.com/some-uri
我会被重定向到https://example.com
可能是什么原因?
我的 phpMyAdmin 位于/srv/www/htdocs/phpMyAdmin/
. 网络服务器的 IP 是192.168.40.40
如果我尝试像这样访问 phpMyAdmin:http://192.168.40.40/phpMyAdmin
然后我会被重定向到我为项目 (entwicklung.company) 创建的虚拟主机。
我被重定向到的项目的 VHOST,如果我调用entwicklung.phpmyadmin
:
<VirtualHost *:80>
ServerName entwicklung.company
ServerAdmin [email protected]
DocumentRoot /srv/www/vhosts/company
ErrorLog /var/log/apache2/company_error.log
CustomLog /var/log/apache2/company_access.log common
<Directory "/srv/www/vhosts/company">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
所以我尝试为phpMyAdmin创建一个虚拟主机,但是403 permission denied
如果我尝试调用它就会得到。
用户和组设置wwwrun
为chown -R wwwrun:wwwrun /srv/www/vhosts/phpMyAdmin
phpMyAdmin 的 VHOST:
<VirtualHost *:80>
ServerName entwicklung.phpmyadmin
ServerAdmin [email protected]
DocumentRoot /srv/www/vhosts/phpMyAdmin
ErrorLog /var/log/apache2/phpmyadmin_error.log
CustomLog /var/log/apache2/phpmyadmin_access.log common
<Directory "/srv/www/vhosts/phpMyAdmin">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
我该如何解决这个问题?
我设法通过使用以下配置设置了一个虚拟主机:
<VirtualHost *:80>
ServerName entwicklung.hausfux
ServerAdmin [email protected]
DocumentRoot /srv/www/vhosts/hausfux/
ErrorLog /var/log/apache2/hausfux_error.log
CustomLog /var/log/apache2/hausfux_access.log common
<Directory "/srv/www/vhosts/hausfux/">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
但现在所有 url 都包含虚拟主机目录的路径,/srv/www/vhosts/hausfux/
例如:
http://entwicklung.hausfux/srv/www/vhosts/hausfux/skin/frontend/venedor/default/css/styles-venedor.css net::ERR_ABORTED 404 (Not Found)
代替:
http://entwicklung.hausfux/skin/frontend/venedor/default/css/styles-venedor.css
这是我的 .htaccess 文件:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
我究竟做错了什么?
我正在使用 openSUSE Linux。我未能创建一个虚拟主机,所以我将我的项目放到了/srv/www/htdocs
.
.htaccess 文件未加载。 如果我将垃圾添加到 .htaccess 文件中,我的网站仍然会在没有内部服务器错误(状态代码 500)的情况下加载。
我在以下位置添加了这个块/etc/apache2/httpd.conf
:
<Directory "/srv/www/htdocs">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
并重新启动 apache2,但 .htaccess 文件仍未产生服务器错误,因此未加载。
我们有一个网站(文件夹名 /srv/www/vhosts/wp-intranet托管在我们 LAN 中的服务器上。我们需要一个虚拟主机,以便可以通过“ http://192.168.20.25/intranet ”访问该网站和/或“ http://intranet.mycompany.de ”
我按照文档中的说明进行操作,但它不起作用。这是 VirtualHost 配置(/etc/apache2/vhost.d/wp-intranet.conf)
<VirtualHost 192.168.20.25>
ServerName intranet.mycompany.de
DocumentRoot /srv/www/vhosts/wp-intranet
ServerAdmin [email protected]
ErrorLog /var/log/apache2/intranet.mycompany.de_errorlog
CustomLog /var/log/apache2/intranet.mycompany.de_customlog common
<Directory "/srv/www/vhosts/wp-intranet">
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
我也添加NameVirtualHost *:80
到/etc/apache2/listen.conf
.
然后我在我的 Windows 客户端上创建了一个主机条目:
192.168.20.25 intranet.mycompany.de
intranet.mycompany.de
但是,如果我从我的 Windows 计算机导航到,则该文件/srv/www/htdocs/index.html
将打开。
我还重新启动了 apache 服务(service apache2 restart
)
我希望有人能指出我正确的方向。该文档没有帮助,我按照每个步骤进行操作,但仍然无法正常工作。
我尝试稍微保护我的开发 Web 项目并添加目录保护。(德语中的“Verzeichnisschutz”)。
这是我的.htaccess
文件(project/.htaccess)
AuthType Basic
AuthName "Please enter the valid auth details"
AuthUserFile .htpasswd
Require valid-user
这是我的.htpasswd
文件(project/.htpasswd)
test:$apr1$3RWv80vU$MJFZn3DHhrB8yPNO6/TDV.
但我仍然可以进入网站而无需输入任何凭据。我尝试了不同的浏览器和检查器/私人模式。
怎么了?